Recomendado: sobre el manejo de excepciones en ASP.NET AJAX Recientemente, cuando estaba trabajando en un proyecto, apliqué mucho ASP.NET Ajax. Dado que en el modo de actualización asíncrona de UpdatePanel, las excepciones que ocurren durante el procesamiento de fondo no causarán cambios en la interfaz del cliente, pero aparecerán directamente la información de excepción en el modo de alerta. Así que fui perezoso y cometí directamente el error cuando el fondo detecta la entrada que no cumple con los requisitos.
20 consejos muy útiles en ASP:
1. Cómo usar ASP para determinar la ruta física virtual de su sitio web
Respuesta: use el método mappath
<p align = center> <font size = 4 face = arial> <b>
La ruta física a este sitio web virtual es:
</b> </font>
<font color =#ff0000 size = 6 face = arial>
< % = Server.mappath (/) %>
</font> </p>
2. ¿Cómo conozco el navegador utilizado por el usuario?
Respuesta: use el método de objeto de solicitud
strbrowser = request.ServerVariables (http_user_agent)
If instrer (strbrowser, msie) <> 0 entonces
Response.Redirect (Formsieonly.htm)
Demás
Response.Redirect (forall.htm)
Final si
3. Cómo calcular el número promedio de visitas repetidas por día
Respuesta: Solución
< % startDate = fatediff (D, ahora, 01/01/1990)
Si strdate <0 entonces inicioDate = startDate*-1
AVGVPD = int ((UsERCNT)/StartDate) %>
Mostrar resultados
< % Response.Write (AVGVPD) %>
Eso es todo. Esta página se ha visto desde el 10 de noviembre de 1998
4. Cómo mostrar imágenes aleatorias
< % Dim P, PPIC, DPIC
PPIC = 12
aleatorizar
p = int ((ppic*rnd) 1)
dpic = graphix/randompics/& p & .gif
%>
espectáculo
<img src = < % = dpic % >>
5. Cómo volver a la página anterior
Respuesta: <a href = < % = request.ServerVariAbles (http_referer) % >> Página preívica < /a>
O use una imagen como: <img src = arrowback.gif alt = < % = request.ServerVariAnbles (http_referer) % >>
6. Cómo determinar la dirección IP de la otra parte
Respuesta: < % = request.ServerVariables (remota_addr) %>
7. Cómo vincular a una imagen
Respuesta: < % @idiomas = vBscript %>
< % respuesta.expires = 0
sTrimageName = Graphix/errores/erroriamge.gif
Respuesta.Redirect (strimageName)
%>
8. Cuadro de diálogo de entrada de contraseña de fuerza
Respuesta: Pon esta oración al comienzo de la página
< % respuesta.status = 401 no autorizado
respuesta.
%>
9. Cómo pasar variables de una página a otra
Respuesta: Use el tipo oculto para pasar variables
< % de método de formato = post acción = myNextPage.asp>
< % para cada elemento en solicitud.Form %>
<input namee = < % = item %> type = Hidden
valor = < % = server.htmlencode (request.form (item)) % >>
< % siguiente %>
</form>
10. ¿Por qué uso msgbox en el programa ASP? El error del programa dice que no hay permiso
Respuesta: Dado que el servidor ejecuta ASP, si se puede mostrar un cuadro de diálogo en el servidor, debe esperar hasta que alguien presione bien antes de que su programa pueda continuar ejecutándose. En general, no habrá nadie en el servidor, por lo que Microsoft tiene que prohibir esta función y decirle al azar (jaja) que no hay permiso. Sin embargo, los scripts ASP y del cliente pueden mostrar un cuadro de diálogo, como sigue:
11. ¿Hay alguna manera de proteger su código fuente y no dejar que la gente lo vea?
R: Puede descargar un codificador de script de Microsoft Windows, que puede cifrar scripts ASP y scripts JavaScript/VBScript del cliente. . . Sin embargo, después de encriptar el cliente, solo se puede ejecutar IE5. Después de encriptar el servidor, solo si Script Engine 5 está instalado en el servidor (se puede encontrar una instalación de un IE5).
12. ¿Cómo puedo transferir la cadena de consulta de un archivo ASP a otro?
Respuesta: El archivo anterior agrega la siguiente oración: Response.Redirect (Second.asp? & Solic.ServerVariables (Query_String))
13. El archivo global.asa siempre no funciona?
Respuesta: Solo cuando el directorio web está configurado en la aplicación web, Global.asa es válida y Global.asa es válido en el directorio raíz de una aplicación web. IIS4 puede usar Internet Service Manager para configurar la configuración de la aplicación ¿Cómo puede el archivo HTM ejecutar el código de script como un archivo ASP?
14. ¿Cómo puede el archivo HTM poder ejecutar el código de script como un archivo ASP?
Respuesta: Manager de servicios de Internet -> Seleccione Sitio web predeterminado -> Botón derecho del mouse -> Propiedades del menú -> Directorio de inicio -> Configuración de la aplicación -> Haga clic en Configuración del botón -> Mapeo de aplicaciones -> Haga clic en el botón Agregar -> Executable Seleccionar /winnt/System32/inetsrv/asp.dll Extensión Ingrese HTM Método Exclusiones ENTRE ENTER PUT. Delete todo confirmado. Sin embargo, vale la pena señalar que de esta manera, la eficiencia se reducirá.
15. Cómo registrar componentes
Respuesta: Hay dos formas.
El primer método: registrar manualmente DLL Este método se utiliza desde IIS 3.0 hasta IIS 4.0 y otros servidores web. Requiere que lo ejecute en la línea de comando, ingrese el directorio que contiene el DLL e ingrese: regsvr32 component_name.dll Por ejemplo, c:/temp/regsvr32 aspemail.dll registrará la información específica del DLL en el registro del servidor. Luego, este componente se puede usar en el servidor, pero este método tiene un defecto. Después de registrar un componente utilizando este método, el componente debe establecer la cuenta anónima correspondiente con NT para tener permiso para ejecutar esta DLL. En particular, algunos componentes deben leer el registro, por lo que el método de registro de componentes es solo usar si no hay MT en el servidor. Para no registrar esta dll, use: regsvr32 /u aspobject.dll ejemplo c: /temp /regsvr32 /u aneiodbc.dll
El segundo método: el uso de MTS (Microsoft Transaction Server) MTS es una nueva característica de IIS 4, pero proporciona una gran mejora. MTS le permite especificar que solo los usuarios privilegiados pueden acceder a los componentes, mejorando en gran medida la configuración de seguridad en el servidor del sitio web. Los pasos para registrar un componente en MTS son los siguientes:
1) Abra la consola de gestión de IIS.
2) Expanda el servidor de transacciones, haga clic con el botón derecho en PKGS instalados y seleccione un nuevo paquete.
3) Haga clic en Crear un paquete vacío.
4) Nombra el paquete.
5) Especifique la cuenta del administrador o use Interactive (si el servidor a menudo inicia sesión con el administrador).
6) Ahora use Haga clic con el botón derecho en los componentes expandidos debajo del paquete que acaba de crear. Seleccione nuevo componente y luego componente.
7) Seleccione Instalar un nuevo componente.
8) Encuentre su archivo .dll y seleccione a continuación para finalizar.
Para eliminar este objeto, simplemente seleccione su icono y seleccione Eliminar.
Nota: Preste especial atención al segundo método, que es la mejor manera de depurar los componentes que escribe usted mismo sin tener que reiniciar la máquina cada vez.
16. Conecte ASP para acceder a la base de datos:
Dim Conn, mdbfile
mdbfile = server.mappath (nombre de la base de datos.mdb)
Establecer conn = server.createObject (ADODB.Connection)
Conn.open Driver = {Microsoft Access Driver (*.mdb)}; uid = admin; pwd = contraseña de base de datos; dbq = & mdbfile
17. Conecte ASP a la base de datos SQL:
Dim CONN
Establecer conn = server.createObject (ADODB.Connection)
con.open; proveedor = sqloledb; data source = SQL Server Nombre o dirección IP; uid = sa; pwd = contraseña de base de datos; database = name de base de datos
Cree un objeto de conjunto de registros:
establecer rs = server.createObject (ADODB.RecordSet)
Declaración de Rs.open SQL, Conn, 3,2
18. Métodos de uso de comandos SQL comunes:
(1) Filtrado de registro de datos:
SQL = SELECCIONAR * DESDE TABLA DE DATOS DONDE Nombre de campo = Orden de valor de campo por nombre de campo [DESC]
SQL = SELECT * De la tabla de datos donde el nombre de campo como % de campo valor de campo % orden por nombre de campo [DESC]
SQL = Seleccione Top 10 * de la tabla de datos donde el nombre del campo ordene por nombre de campo [DESC]
SQL = SELECT * de la tabla de datos donde el nombre del campo en (valor 1, valor 2, valor 3)
SQL = SELECT * de la tabla de datos donde el nombre del campo entre el valor 1 y el valor 2
(2) Actualizar registros de datos:
SQL = Actualizar la tabla de datos SET Nombre de campo = Valor de campo Donde la expresión condicional
SQL = Actualizar Tabla de datos Conjunto Campo 1 = Valor 1, Campo 2 = Valor 2 ... Campo N = Valor N Donde Expresión condicional
(3) Eliminar registros de datos:
sql = eliminar de la tabla de datos donde la expresión condicional
sql = eliminar la tabla de datos (eliminar todos los registros en la tabla de datos)
(4) Agregar registros de datos:
sql = insertar en la tabla de datos (campo 1, campo 2, campo 3 ...) Valuess (valor 1, valor 2, valor 3 ...)
sql = insertar en la tabla de datos de destino seleccionar * de la tabla de datos de origen (agregue el registro de la tabla de datos de origen a la tabla de datos de destino)
(5) Función de estadísticas de registro de datos:
AVG (nombre de campo) para obtener un valor promedio de una columna de tabla
Conte (*| Nombre del campo) Estadísticas sobre el número de filas de datos o estadísticas sobre el número de filas de datos con valores en una determinada columna
Max (nombre de campo) Obtenga el valor máximo de una columna de tabla
Min (nombre de campo) Obtenga el valor mínimo de una columna de tabla
Suma (nombre del campo) agrega el valor de la columna de datos
Referencia al método de función anterior:
SQL = SELECT SUM (Nombre del campo) como alias de la tabla de datos donde la expresión condicional
establecer rs = conn.excute (SQL)
Use RS (alias) para obtener las estadísticas, y otras funciones se usan lo mismo que el anterior.
(5) Establecimiento y eliminación de tablas de datos:
Crea la tabla Nombre de la tabla (Campo 1 Tipo 1 (Longitud), Campo 2 Tipo 2 (Longitud) ...)
Ejemplo: Crear tabla Tab01 (nombre Varchar (50), DateTime Default Now ())
Nombre de la tabla de datos de la tabla de soltar (eliminar permanentemente una tabla de datos)
19. Métodos de objetos de conjunto de registros:
Rs.Movenext mueve el puntero de registro por una línea desde la posición actual
Rs.MovePrevious mueve el puntero de registro en una línea desde la posición actual
Rs.MoveFirst mueve el puntero de registro a la primera fila de la tabla de datos
Rs.movelast mueve el puntero de registro a la última fila de la tabla de datos
Rs.AbsolutePosition = n Mueva el puntero de registro a la fila N de la tabla de datos
Rs.AbsolutePage = n Mueva el puntero de registro a la primera línea de la página N
rs.pagesize = n Establecer cada página en n registros
Rs.PageCount devuelve el número total de páginas de acuerdo con la configuración de PageSize
Rs.RecordCount devuelve el número total de registros
RS.BOF Devuelve si el puntero de registro excede el jefe de la tabla de datos. Verdadero significa que sí, el falso es no
Rs.EOF devuelve si el puntero de registro excede el final de la tabla de datos, verdadero significa que sí, el falso es no
Rs.Delete elimina el registro actual, pero el puntero de registro no se mueve hacia abajo
Rs.addNew Agregar registro al final de la tabla de datos
Rs. -Update actualizan registros de la tabla de datos
---------------------------------------
20 Método de objeto de registro
Método abierto
RecordSet.Pread Source, Activeconnection, cursortype, LockType, Opciones
Fuente
El objeto RegistroSet se puede conectar al objeto de comando a través de la propiedad de origen. El parámetro de origen puede ser un nombre de objeto de comando, un comando SQL, un nombre de tabla de datos especificado o un procedimiento almacenado. Si se omite este parámetro, el sistema utiliza la propiedad de origen del objeto RecordSet.
Activeconexión
El objeto de registro se puede conectar al objeto de conexión a través de la propiedad ActiveConnection. La ActiveConnection aquí puede ser un objeto de conexión o un parámetro de cadena que contiene información de conexión de la base de datos (ConnectionString).
Cursor
El parámetro cursortype del método abierto del objeto de conjunto de registros indica qué tipo de cursor inicia los datos, incluidos AdoptForWardonly, AdoptenKeyset, Adoptynamic y Adoptenstatic, que se describen de la siguiente manera:
--------------------------------------------------------------
Descripción del valor constante constante
-------------------------------------------------------------
AdoptForwardonly 0 Valor predeterminado, inicia un cursor que solo puede avanzar (solo hacia adelante).
AdoptenKeySet 1 inicia un cursor de tipo KeySet.
Adoptynamic 2 Comience un cursor de tipo dinámico.
Adoptenstatic 3 comienza un cursor de tipo estático.
-------------------------------------------------------------
Los tipos de cursor anteriores afectarán directamente todas las propiedades y métodos del objeto Registro. La siguiente lista explica la diferencia entre ellos.
-------------------------------------------------------------
Propiedad de registro Adoptingenly AdopenKeySet Adoptinamy Adopenstatic
-------------------------------------------------------------
AbsoluTepage no es compatible
AbsolutePosition no es compatible
Activeconnection legible, escritable, legible, escrito, legible, escritable, legible, escritable
BOF de solo lectura de solo lectura de solo lectura de solo lectura
Marcador no es compatible
Cachesizar legible, escritable, legible, escritable, legible, escritable
Cursorlocation legible, escritable, legible, escritable, legible, escritable, legible, escritable
Cursortype legible, escritable, legible, escritable, legible, escritable, legible, escritable
EditMode de solo lectura de solo lectura de solo lectura de solo lectura
EOF de solo lectura de solo lectura de solo lectura de solo lectura
Filtro legible, escritable, legible, escritable, legible, escritable, legible, escritable
LockType legible, escritable, legible, escritable, legible, escritable, legible, escritable
Marshaloptions legibles, escritos, legibles, escritos, legibles, escritos
MaxRecords legible, redactable, legible, redactado, legible, WRITITY
PageCount no es compatible con solo lectura de lectura
PageSize legible, escritable, legible, escrito, legible, escritable, legible, escritable
RecordCount no es compatible con solo lectura de lectura
Fuente legible, escritable, legible, escritable, legible, escritable, legible, escritable
Estado de solo lectura de solo lectura de solo lectura de solo lectura
Estado de solo lectura de solo lectura de solo lectura de solo lectura
AddNew Support Support Support Support
CancelBatch Support Support Support Support
Soporte de soporte de soporte de CancelUpdate Support
Clone no lo admite o no
Soporte de soporte de soporte de estrecho soporte
Eliminar soporte de soporte soporte soporte
GetROWS Support Support Support
Move no admite soporte de soporte de soporte
MoveFirst Support Support Support Support
Movelast no admite soporte de soporte de soporte
Soporte de soporte de soporte de MoveNext
MovePrevious no compatible con soporte de soporte de soporte
NEXTRECORDSET Support Support Support Support
Soporte de soporte de soporte de soporte abierto
Soporte de soporte de soporte de requisitos Soporte de soporte
Resync no admite soporte de soporte de soporte
Admite soporte de soporte
Actualizar soporte de soporte Soporte de soporte de soporte
Soporte de soporte de soporte de soporte de UpdateBatch
--------------------------------------------------------------
El método NEXTRecordSet no es aplicable a las bases de datos de Microsoft Access.
Bloqueo
El parámetro LockType del método abierto del objeto Registro de registro indica el tipo de bloqueo que se debe adoptar. Si se ignora este parámetro, el sistema usará la propiedad LockType del objeto Registro como el valor preestablecido. Los parámetros LockType incluyen AdlockReadonly, AdlockPrsSimistic, AdlockOptimists y AdlockBatchOptimistic, etc., y se describen de la siguiente manera:
-------------------------------------------------------------
Descripción del valor constante constante
--------------------------------------------------------------
AdlockReadonly 1 Valor predeterminado, el objeto RegistroSet se inicia en modo de solo lectura y no se pueden ejecutar AddNew, Update, Delete y otros métodos.
AdlockPrsSimistic 2 Cuando se actualiza la fuente de datos, el sistema bloquea temporalmente las acciones de otros usuarios para mantener la consistencia de los datos.
AdlockOptimists 3 Cuando se actualiza la fuente de datos, el sistema no bloqueará las acciones de otros usuarios. Otros usuarios pueden agregar, eliminar y modificar los datos.
AdlockBatchOptimistic 4 Cuando se actualiza la fuente de datos, otros usuarios deben cambiar la propiedad CursorLocation a AdudeClientBatch para aumentar los datos.
El trabajo eliminado y modificado*.
Compartir: los programadores de ASP deben tener conocimiento Conexión de la base de datos: % set conn = server.createObject (ADODB.Connection) Conn.open Driver = {Microsoft Access Driver ( * .mdb)}; dbq = server.mappath (nombre de la base de datos) % Abre la base de datos: ejecutar = select * desde la tabla de la base de datos set rs = server.createBject (adodb.Recordset)