Рекомендуется: об обработке исключений под ASP.NET AJAX Недавно, когда я работал над проектом, я много применил ASP.NET AJAX. Поскольку в режиме асинхронного обновления UpdatePanel исключения, которые происходят во время обработки фоновой, не вызывают изменения в интерфейсе клиента, но будут непосредственно всплыть в исключении в режиме оповещения. Поэтому я был ленив и непосредственно совершил ошибку, когда фон обнаруживает вход, который не соответствует требованиям.
20 очень полезные советы в ASP:
1. Как использовать ASP для определения виртуального физического пути вашего сайта
Ответ: Используйте метод Маппата
<p align = center> <font size = 4 face = arial> <b>
Физический путь к этому виртуальному веб -сайту:
< /b> < /font>
<font color =#ff0000 size = 6 face = arial>
< % = Server.mappath (/) %>
< /font> < /p>
2. Как я узнаю браузер, используемый пользователем?
Ответ: Используйте метод объекта запроса
strbrowser = request.servervariables (http_user_agent)
Если instr (strbrowser, msie) <> 0, тогда
Response.redirect (formieonly.htm)
Еще
Response.redirect (forall.htm)
Конец, если
3. Как рассчитать среднее количество повторных посещений в день
Ответ: решение
< % startDate = Datefiff (D, теперь, 01/01/1990)
Если strdate <0, то startDate = startDate*-1
avgvpd = int ((usercnt)/startdate) %>
Показать результаты
< % response.write (avgvpd) %>
то есть. Эта страница была просмотрена с 10 ноября 1998 года
4. Как отображать случайные изображения
< % Dim P, PPIC, DPIC
PPIC = 12
рандомизировать
p = int ((PPIC*rnd) 1)
DPIC = GRAPEIX/RANDOMPICS/& P & .GIF
%>
показывать
<img src = < % = dpic % >>
5. Как вернуться на предыдущую страницу
Ответ: <a href = < % = request.servervariables (http_referer) % >> Prevous Page < /a>
Или используйте изображение, такое как: <img src = rowback.gif alt = < % = request.servervariables (http_referer) %>>
6. Как определить IP -адрес другой стороны
Ответ: < % = request.servervariables (remote_addr) %>
7. Как связаться с картинкой
Ответ: < % @languages = vbscript %>
< % response.expires = 0
strimageName = graphix/errors/erroriamge.gif
response.redirect (StrimageName)
%>
8. Диалоговое окно ввода пароля принудительно
Ответ: Поместите это предложение в начале страницы
< % response.status = 401 не разрешен
response.end
%>
9. Как перенести переменные с одной страницы на другую
Ответ: Используйте скрытый тип, чтобы пройти переменные
< % form method = post action = mynextpage.asp>
< % для каждого элемента в запросе. Форма %>
<input name = < % = item %> type = скрыто
value = < % = server.htmlencode (request.form (item)) % >>
< % следующее %>
< /form>
10. Почему я использую MSGBox в программе ASP? Ошибка программы говорит, что нет разрешения
Ответ: Поскольку ASP запускается сервером, если на сервере можно отобразить диалоговое окно, вы должны подождать, пока кто -то нажмет OK, прежде чем ваша программа будет продолжаться. Как правило, на сервере не будет никого, поэтому Microsoft должна запретить эту функцию и случайным образом сказать вам (ха -ха), что разрешения нет. Однако сценарии ASP и клиента могут отобразить диалоговое окно следующим образом:
11. Есть ли способ защитить ваш исходный код и не позволить людям его видеть
A: Вы можете скачать энкодер сценария сценария Microsoft Windows, который может зашифровать скрипты ASP и клиентские сценарии JavaScript/VBScript. Полем Полем Однако после того, как клиент будет зашифрован, можно выполнить только IE5. После того, как сервер зашифруется, только в случае сценария Engine 5 установлен на сервере (можно найти установку одного IE5).
12. Как я могу перенести строку запроса из одного файла ASP в другой?
Ответ: Бывший файл добавляет следующее предложение: response.redirect (second.asp? & Request.servervariables (Query_string)))
13. Файл Global.ASA всегда не работает?
Ответ: Только когда веб -каталог установлен на веб -приложение, Global.asa действителен, а Global.asa действителен в корневом каталоге веб -приложения. IIS4 может использовать Internet Service Manager для настройки настройки приложения, как может выполнить код скрипта HTM, например, файл ASP?
14. Как файл HTM может выполнять код скрипта, как файл ASP?
Ответ: Internet Services Manager -> Выберите веб -сайт по умолчанию -> Кнопка правой мыши -> Свойства меню -> Home Directory -> Настройки приложения -> Click Configuration -> Moppent App -> Кнопка нажмите кнопку ADD -> Executable Browser SELECT /WINNT/SYSTEM32/InetSrv/ASP.DLL Extension Exclesy Exclusions Exclusions Exclusions Exclusions Exclusions Exclusions Exclusions Exclusions Exclusions. Тем не менее, стоит отметить, что таким образом эффективность будет снижена.
15. Как зарегистрировать компоненты
Ответ: Есть два способа.
Первый метод: вручную зарегистрировать DLL Этот метод используется от IIS 3.0 до IIS 4.0 и других веб -серверов. Это требует, чтобы вы выполнили его в командной строке, введите каталог, содержащий DLL, и введите: regsvr32 component_name.dll, например, c:/temp/regsvr32 aspemail.dll. Он зарегистрирует конкретную информацию DLL в реестр на сервере. Затем этот компонент можно использовать на сервере, но этот метод имеет недостаток. После регистрации компонента, используя этот метод, компонент должен установить соответствующую анонимную учетную запись, чтобы получить разрешение на выполнение этого DLL. В частности, некоторые компоненты должны читать реестр, поэтому метод регистрации компонентов просто для использования, если на сервере нет MTS. Чтобы перерегистрировать этот DLL, используйте: regsvr32 /u aspobject.dll Пример c: /temp /regsvr32 /u aneiodbc.dll
Второй метод: использование MTS (Microsoft Transaction Server) MTS является новой функцией IIS 4, но он обеспечивает огромное улучшение. MTS позволяет вам указать, что только привилегированные пользователи могут получить доступ к компонентам, значительно улучшая настройки безопасности на сервере веб -сайта. Шаги по регистрации компонента на МТ следующие:
1) Откройте консоли управления IIS.
2) Разверните сервер транзакций, щелкните установлен правой кнопкой мыши PKG и выберите новый пакет.
3) Нажмите «Создать пустой пакет».
4) Назовите пакет.
5) Укажите учетную запись администратора или используйте Interactive (если сервер часто входит в систему с администратором).
6) Теперь используйте правой кнопкой мыши расширенные компоненты под пакетом, который вы только что создали. Выберите новый компонент.
7) Выберите «Установить новый компонент».
8) Найдите свой файл .dll и выберите рядом с финишем.
Чтобы удалить этот объект, просто выберите его значок и выберите Delete.
ПРИМЕЧАНИЕ. Обратите особое внимание на второй метод, который является лучшим способом отладки компонентов, которые вы пишете сами, не перезагружая машину каждый раз.
16. Подключите ASP, чтобы получить доступ к базе данных:
Dim Conn, Mdbfile
mdbfile = server.mappath (имя базы данных.mdb)
Установить conn = server.createObject (adodb.connection)
Conn.Open Driver = {Microsoft Access Driver (*.mdb)}; uid = admin; pwd = пароль базы данных; dbq = & mdbfile
17. Подключите ASP к базе данных SQL:
Dim Conn
Установить conn = server.createObject (adodb.connection)
con.open; provider = sqloledb; data source = sql server name или IP -адрес; uid = sa; pwd = пароль базы данных; база данных = Имя базы данных
Создайте объект набора записей:
Установить rs = server.createObject (adodb.recordset)
Rs.Open SQL -заявление, Conn, 3,2
18. Общие методы использования команды SQL:
(1) Фильтрация записи данных:
SQL = SELECT * Из таблицы данных, где поля, имя = значение значения поля по имени поля [desc]
SQL = SELECT * Из таблицы данных, где имя поля, например, значение поля %, значение % порядок по имени поля [desc]
SQL = выберите Top 10 * из таблицы данных, где поля, поля, по имени поля [desc]
SQL = SELECT * Из таблицы данных, где имя поля в (значение 1, значение 2, значение 3)
SQL = SELECT * Из таблицы данных, где имя поля между значением 1 и значением 2
(2) Обновление данных данных:
SQL = Обновление таблицы данных Установите имя поля = значение поля, где условное выражение
SQL = Обновление таблицы данных Поле Поле 1 = значение 1, поле 2 = значение 2 ... поле n = значение n, где условное выражение
(3) Удалить записи данных:
SQL = удалить из таблицы данных, где условное выражение
SQL = DELETE из таблицы данных (удалить все записи в таблице данных)
(4) Добавить записи данных:
SQL = вставьте в таблицу данных (поле 1, поле 2, поле 3…) Значение (значение 1, значение 2, значение 3…)
SQL = INSERT в таблицу целевой таблицы данных Выберите * Из таблицы исходных данных (добавьте запись таблицы исходных данных в таблицу целевых данных)
(5) Функция статистики записи данных:
AVG (имя поля), чтобы получить среднее значение столбца таблицы
COUNT (*| Имя поля) Статистика по количеству строк данных или статистики по количеству строк данных со значениями в определенном столбце
Макс (имя поля) Получите максимальное значение столбца таблицы
Мин (имя поля) Получите минимальное значение столбца таблицы
Sum (имя поля) добавляет значение столбца данных
Ссылка вышеуказанный метод функции:
SQL = SELECT SUM (имя поля) в качестве псевдонима из таблицы данных, где условное выражение
Установите rs = conn.excute (sql)
Используйте RS (псевдоним), чтобы получить статистику, а другие функции используются так же, как и выше.
(5) Создание и удаление таблиц данных:
Создать таблицу данных таблица (поле 1 Тип 1 (длина), поле 2 Тип 2 (длина)…)
Пример: создать Table Tab01 (name varchar (50), dateTime default now ())
Отбросить таблицу данных таблицы данных (навсегда удалить таблицу данных)
19. Методы записей установленных объектов:
Rs.movenext перемещает указатель записи вниз по одной линии из текущей позиции
Rs.MovePrevious перемещает указатель записи в одну строку из текущей позиции
Rs.MoveFirst перемещает указатель записи на первую строку таблицы данных
Rs.Movelast перемещает указатель записи на последнюю строку таблицы данных
rs.absoluteposition = n Перемещение указателя записи в строку n таблицы данных
rs.absolutepage = n переместить указатель записи на первую строку страницы n
rs.pearsize = n Установите каждую страницу на n records
Rs.PageCount возвращает общее количество страниц в соответствии с настройками страниц
Rs.recordCount возвращает общее количество записей
Rs.BOF возвращает, превышает ли указатель записи головы таблицы данных. Верно означает, да, ложь - нет
rs.eof возвращает, превышает ли указатель записи конец таблицы данных, true означает да, ложь - нет
Rs.Delete удаляет текущую запись, но указатель записи не движется вниз
Rs.Addnew Добавить запись в конце таблицы данных
Rs.Update Update Table Data Records
---------------------------------------
20 Метод объекта записи объекта
Открытый метод
recordset.Open Источник, ActiveConnection, Cursortype, Locktype, параметры
Источник
Объект записей может быть подключен к объекту команды через свойство источника. Параметром источника может быть именем объекта команды, командой SQL, указанным именем таблицы данных или хранимой процедурой. Если этот параметр опущен, система использует свойство источника объекта записи.
ActiveConnection
Объект Recordset может быть подключен к объекту соединения через свойство ActiveConnection. ActiveConnection здесь может быть объектом подключения или параметром строки, содержащим информацию об подключении базы данных (ConnectionString).
Cursortype
Параметр Cursortype открытого метода объекта Recordset показывает, какой тип курсора запускает данные, включая AdassenForwardonly, AdviceNkeySet, Adissendynamic и Adposenstatic, которые описаны следующим образом:
---------------------------------------------------------------
Описание постоянного постоянного значения
-------------------------------------------------------------
AdassenForwardonly 0 Значение по умолчанию начинает курсор, который может двигаться только вперед (только вперед).
AdissenKeySet 1 начинает курсор типа Keyset.
AdissedEndynamic 2 Начните курсор динамического типа.
Adassenstatic 3 начинает курсор статического типа.
-------------------------------------------------------------
Приведенные выше типы курсора будут напрямую влиять на все свойства и методы объекта записи. Следующий список объясняет разницу между ними.
-------------------------------------------------------------
Усыновление имущества AdposingForwardOnly AdviewEnkeySet AdvisEndyNamic AdpasenStatic
-------------------------------------------------------------
AbsolutePage не поддерживает читаемое, писательское, читаемое, пишет
AbsolutePosition не поддерживает читаемое, писательское, читаемое, записываемое
ActiveConnection читаемое, писательское, читаемое, писательское, читаемое, записываемое, читаемое, записываемое
Только для чтения только для чтения чтения только для чтения только для чтения
Закладка не поддерживает читаемое, писательское, читаемое, пишет
Cachesize Readable, написан, читаемый, питается, читается, питается
Cursorlocation читаемый, писательский, читаемый, пригодный для записи, читаемый, писательский, читаемый, писатель
Cursortype читаемый, писательский, читаемый, пригодный для записи, читаемый, писательский, читаемый, писатель
Только для чтения только для чтения только для чтения.
Только для чтения только для чтения чтения только для чтения только для чтения
Фильтр читается, пишет, читается, записывается, читается, читается, питается, читается, пишет
Locktype читаемый, писательский, читаемый, пригодный для записи, читаемый, писательский, читаемый, записываемый
Маршалопции читаемые, записываемые, читаемые, записываемые, читаемые, записываемые
MaxRecords читаемые, записываемые, читаемые, записываемые, читаемые, записываемые
Pagecount не поддерживает только чтение только для чтения
PageSize читается, записываемое, читаемое, записываемое, читаемое, доступное, читаемое, записываемое
RecordCount не поддерживает только чтение только для чтения
Прочтите источник, пригодный для записи, читаемый, записываемый, читаемый, записываемый, читаемый, писатель
Только для чтения только чтение только для чтения только для чтения
Только для чтения только для чтения.
Поддержка поддержки поддержки AddNew
Поддержка поддержки поддержки Cancelbatch
Поддержка поддержки поддержки Cancelupdate
Клон не поддерживает его или нет
Заключение поддержки поддержки поддержки поддержки
Удалить поддержку поддержки поддержки поддержки
Поддержка поддержки GetRows
MOVE не поддерживает поддержку поддержки поддержки
Поддержка поддержки поддержки перемещения
Movelast не поддерживает поддержку поддержки поддержки
Поддержка поддержки поддержки Movenext
MovePrevious не поддерживается поддержка поддержки поддержки поддержки
Nextrecordset поддержка поддержки поддержки поддержки поддержки
Открытая поддержка поддержки поддержки поддержки
Поддержка поддержки поддержки запросов
Resync не поддерживает поддержку поддержки поддержки
Поддерживает поддержку поддержки
Обновление поддержки поддержки поддержки поддержки
Поддержка поддержки поддержки UpdateBatch
---------------------------------------------------------------
Метод NexTrecordSet не применим к базам данных Microsoft Access.
Locktype
Параметр Locktype с открытым методом объекта записи указывает тип блокировки, который должен быть принят. Если этот параметр игнорируется, система будет использовать свойство LockType объекта RecordSet в качестве заданного значения. Параметры Locktype включают в себя adlockreadonly, adlockprssimistic, adlockoptimistry и adlockbatchoptimistic и т. Д. И описаны следующим образом:
-------------------------------------------------------------
Описание постоянного постоянного значения
---------------------------------------------------------------
adlockreadonly 1 значение по умолчанию, объект записи запускается в режиме только для чтения, а AddNew, Update, Delete и другие методы не могут быть запущены.
adlockprssimistic 2 Когда источник данных обновляется, система временно блокирует действия других пользователей для поддержания согласованности данных.
adlockoptimistr 3 Когда источник данных обновляется, система не будет блокировать действия других пользователей. Другие пользователи могут добавлять, удалять и изменить данные.
adlockbatchoptimistr 4 Когда источник данных обновляется, другие пользователи должны изменить свойство Coursorlocation на AdudeclientBatch для увеличения данных.
Удален и модифицирован* работа.
Поделиться: программисты ASP должны иметь знания Соединение базы данных: % set conn = server.createObject (adodb.connection) conn.open driver = {microsoft access driver ( * .mdb)}; dbq = server.mappath (имя базы данных) % Откройте базу данных: exec = select * из таблицы базы данных rs = server.createobject (adodb.recordset)