Recomendado: como implementar a sessão de compartilhamento ASP e ASP.NET No .NET, o mecanismo de armazenamento da sessão é diferente do do ASP. Embora possa executar ASP e ASPX ao mesmo tempo no mesmo IIS, a sessão não pode ser passada entre eles. Anteriormente, um grande número de sistemas era usado para ASP. Durante o processo de atualização, se o ASP for completamente abandonado
Usando a mesma ideia que criar uma conexão universal em um módulo separado, criamos um pagelet. O Pagelet permite que os desenvolvedores criem pseudo-controlos, que podem ser usados para exibir propriedades, métodos e eventos, bem como objetos. Nossa solução é criar um pagelet que exibe o método ConnectTodb, que retorna um objeto de adoconnection (ligeiramente diferente da sintaxe da ADO). Usamos o seguinte código para criar um pagelet e salvá -lo como connect.aspc (a extensão indica que é um pagelet)< %@ Importar namespace = System.data %>
< %@ Importar namespace = system.data.ado %>
<idioma de script = vb runat = server>
Função pública ConnectTodb () como adoconnection
ConnectTodb = new Adoconnection (DSN = EVILLSN)
Função final
< /script>
Você notará que importamos dois namespaces, nomeadamente System.Data e System.Data.ado. Esses namespaces são necessários para usar o provedor gerenciado da ADO. Muitas pessoas me fizeram muitas perguntas sobre isso, porque a maioria dos exemplos atualmente usa o fornecedor gerenciado pelo SQL com base no banco de dados do Microsoft SQL Server 2000. Para bancos de dados não-SQL Server, o ASP pode usar o provedor gerenciado da ADO, que é aproximadamente da mesma maneira que você usa atualmente no seu programa. A importação de namespaces é semelhante à criação de referências em programas VB.
O uso do Pagelet me permite manter meu plano atual do site e, uma vez que uma conexão é criada no módulo, podemos reutilizar o módulo onde quer que precisemos. Isso significa que precisamos substituir a diretiva de arquivo incluir uma instância de Pagelet e, em seguida, chamar o método ConnectTodB quando precisarmos de uma conexão de banco de dados. Em uma página que requer um pagelet, devemos primeiro registrá -la na página usando a diretiva ASP. Na diretiva, definimos TagPrefix, Tagname e Source (SRC). Semelhante ao arquivo de inclusão no ASP, TagPrefix e Tagname devem ser usados onde colocamos o Pagelet.
< %@ Registro tagprefix = sete tagname = Connect
src = http: //www.alixixi.com/dev/web/asp/asp_1/2007/_includes/connect.aspc %>
O método de colocar o pagelet que acabamos de registrar é semelhante ao controle do servidor ASP:
<[Tagprefix]: [tagname] id = myPagelet runat = server />
por exemplo:
<sete: conectar id = conectar runat = server />
No ADO, o conceito de conjuntos de registros é substituído por uma combinação de conjuntos de dados e dataviews. Discutiremos esses dois conceitos mais tarde. Primeiro, vamos ver quais mudanças ocorreram após a página padrão. Vejamos o default.asp primeiro:
<!-#include arquivo = _includes/Connect.inc->
< %
Dim cneville_db, rsupcoms, strsqlup ou
SET RSUPCIMENTE = server.createObject (adodb.recordset)
strsqLupCo = selecione Top 2 & _
Classes.title, sessions.session_id, & _
Sessions.Special, Classes.Description & _
Das aulas internas de junção sessões em & _
Classes.class_id = sessions.classid & _
Onde (((sessions.date)> date ())) & _
Ordem por Sessions.Date
RSUPCIMENT.OPEN StrSQLUP próximo, cneville_db
%>
No ASP, torna -se padrão.aspx:
< %@ Importar namespace = System.data %>
< %@ Importar namespace = system.data.ado %>
< %@ Registra tagprefix = sete tagname = Connect & _
src = http: //www.alixixi.com/dev/web/asp/asp_1/2007/_includes/connect.aspc %>
<idioma de script = vb runat = server>
Sub Page_load (fonte como objeto, e como EventArgs)
Den DScUsward como AdodatasetCommand
Ds Dsup no novo conjunto de dados
StrSQL dim Dim como string
strsql = selecione as 2 principais classes.title, & _
Sessions.Session_Id, Classes.Description & _
Das aulas internas de junção sessões em & _
Classes.class_id = sessions.classid & _
Onde (((sessions.date)> date ())) & _
Ordem por Sessions.Date
DSCUPCIMENTO = new AdodataSetCommand (strSQL, Connect.ConnectTodb ())
DSCUPCIMENT.FILLDATASET (DSUPCIMENTO, PRÓXIMO)
Final sub
< /script>
O núcleo do acesso a dados, as declarações ANSI-SQL não têm nada após a conversão
Compartilhar: Discussão sobre o status de controle e o status de visualização do ASP.NET 2.0 Status do controle de conceitos básicos - para que o controle funcione corretamente, às vezes os dados de status de controle são necessários. Por exemplo, se você escrever um controle personalizado com guias diferentes mostrando informações diferentes, para que o controle funcione conforme o esperado, o controle precisa saber que foi uma viagem de ida e volta