Passo a passo: Mantendo informações de site do usuário com propriedades de perfil
ASP.NET Perfil propriedades permitem que o aplicativo para controlar e armazenar informações específicas do usuário permanentemente.Por exemplo, os usuários poderão especificar um código postal ou um esquema de cores favoritos e seu aplicativo poderá armazenar essas informações e recuperá-las em qualquer lugar do aplicativo.O ASP.NET casa automaticamente o usuário atual — quer o usuário seja anônimo ou tenha efetuado logon — com as informações pessoais que estão armazenadas para sua conta de usuário.
Este exame Através mostra como adicionar Perfil Propriedades para o aplicativo e use o Perfil Propriedades para criar uma experiência personalizada para os visitantes do site.
Durante esta explicação passo a passo, você aprenderá a fazer o seguinte:
Configurar um aplicativo para usar Perfil Propriedades.
Definir simples e complexos Perfil As propriedades que você deseja manter para os usuários.
Definir e recuperar Perfil Valores em seu aplicativo.
Uso Perfil As propriedades que possuem Ambos usuários anônimos e conectado.
Pré-requisitos
Para concluir esta explicação passo a passo, será necessário o seguinte:
O Microsoft Visual Web Developer.
O Framework Microsoft .NET .
O Microsoft SQL Server Standard Edition.
O Perfil Propriedade informações que você criar no explicação passo a passo serão armazenadas em uma edição padrão SQL Servidor Banco de Dados.
Cookies ativados em seu navegador.
Observação: ASP.NET Perfil As propriedades podem trabalhar sem cookies, se o aplicativo está configurado para funcionar sem cookies.No entanto, para essa explicação passo a passo você irá usar as configurações padrão para Perfil Propriedades, que usam cookies.
Criar e configurar um site da Web
Se você já tiver Criado um site da Web em Microsoft Visual Studio, completando Demonstra Passo a passo: Criando uma página da Web básica no Visual Web DeveloperVocê pode usar esse site e Ir para a Avançar seção.Caso contrário, crie um novo site seguindo as seguintes etapas.
Para criar um site do sistema de arquivos
Abra Visual Studio.
Sobre o File menu, aponte para Novoe em seguida, clique em Site (ou na File Menu, clique em Novo Site da Web).
O Novo Site da Web caixa de diálogo é exibida.
Em Modelos Visual Studio instaladoClique em Web Site ASP.NET.
Na mais à esquerda. Local lista, clique em Sistema de arquivos.
No mais Direito. Local Lista, digite o nome do w a pasta aqui você deseja manter as páginas do site da Web.
Por exemplo, digite a nome da pasta C:\WebSites.
Na Linguagem lista, clique no linguagem de programação que você prefere trabalhar no.
Clique em OK.
Visual Web Developer cria a pasta e uma nova página chamada Default.aspx.
Configurando Propriedades de Perfil
Antes de trabalhar com o ASP.NET. Perfil propriedades, você irá configurar o aplicativo para ativar e definir o Perfil As propriedades que você deseja controlar para cada usuário.Para Iniciar, você criará um único CEP Propriedade que o site irá controlar para os usuários.Você também configurará o CEP Propriedade de modo que seu site possa controlar- - nos usuários anônimos e registrados.
Você irá trabalhar primeiro como um usuário anônimo.Nos bastidores, o ASP.NET atribuirá a você uma identificação exclusiva e anônima que está armazenada em um cookie no o computador.O ASP.NET pode usar esta identificação anônima para definir e obter valores que são exclusivamente seus.
Para configurar propriedades perfil no site da Web
No Solution Explorer, verifique se o site já tem um arquivo Web.config.
Se o site não tiver um arquivo Web.config, siga as seguintes etapas:
Clique com o botão direito do mouse no nome do site.
Clique em Adicionar novo item.
Em Modelos Visual Studio instaladoClique em Web Configuration File.
Clique em Adicionar.
Um novo arquivo chamado Web.config é adicionado ao site e é aberto no editor.
Adicionar o seguinte < perfil > Elemento para o arquivo como um filho do web.config a < system.web > Elemento:
< system.web > < anonymousIdentification ativado = "Verdadeiro" / ≫< perfil > < propriedades > < Adicionar nome = " Postal Código " type="System.Cadeia de Caracteres " allowAnonymous = "true" / ≫ < / propriedades >< / perfil > <!--Outro web.config configurações aqui--> < /system.web >
Observação: Os elementos do arquivo web.config diferenciam maiúsculas de minúsculas.Portanto, certifique-se que você copiou ou digitou os elementos exatamente igual ao que foi mostrado.
Você adicionou os seguintes elementos:
O < anonymousIdentification > elemento, que especifica se Perfil Propriedades trabalhar somente com usuários com logon feito (autenticados) ou com os usuários com logon feito e anônima.
Nesse maiúscminúsc, você definiu enabled para verdadeiro.Portanto, Perfil Propriedade informações irão ser rastreadas para os usuários com logon feito e anônima.
O < propriedades > elemento, que contém todos os Perfil Propriedades que você está definindo.
O < Adicionar > elemento, que define um novo < perfil > Elemento.
Nesse caso, você definiu uma única Perfil Propriedade chamada CEP.
Quando você definir um Perfil Propriedade, você especificar sua usando um .NET Framework–type tipo de dados Nome de Classe.Você também especificar se o Perfil Propriedade será controlada para usuários anônimos.Após ativar identificação anônima, você pode além disso especificar se deseja controlar Perfil Propriedades individualmente para usuários anônimos.
Você poderia criar um novo Adicionar elemento para cada adicionais Perfil Propriedade que você deseja definir.
Observação: Por padrão, informações de perfil de usuário são armazenadas em um banco de dados SQL Server Standard Edition na subpasta Application_Data do site.Este passo-a-passo usa a configuração padrão.Em aplicativos de produção que serão suportam um número significativo de usuários, é melhor armazenar Perfil Propriedade dados em um Microsoft Banco de Dados SQL Server.Para obter mais informações, consulte "Próximas Etapas", posteriormente neste passo-a-passo.
Definindo e Obtendo a Propriedade PostalCode
Após ter configurado o site para controlar um Perfil Propriedade, você pode definir e obter o Perfil a propriedade como você faria propriedades comuns do componente.Nesta seção, você criará uma página que mostra como definir e obter o CEP valor que você definiu na seção anterior.
Para criar uma página para definir e obter a propriedade PostalCode
Adicionar um novo página da Web ao seu site denominado ProArquivos.aspx.
Abra Profiles.aspx e vá para modo Design.
A partir de Padrão Agrupar na caixa de ferramentas, arraste os controles listados na tabela a seguir para a página e, em seguida, definir suas propriedades conforme observado.
Controle
Configurações das propriedades
TextBox
ID = textPostalCode
Button
ID SetPostalCode =
Texto Conjunto = CEP
Rótulo
ID = labelPostalCode
Texto = (Vazio)
Switch Para Exibir Source e em seguida, adicione o seguinte atributo para o SetPostalCode Botão, se o atributo não existir.
OnClick="SetPostalCode_Click"
Criar um Clique em manipulador para Definir código postale adicione o código a seguir realçado.
Sub-SetPostalCode_Clique(ByVal Sender As Objeto, _ ByVal e As System.EventArgs) Profile.PostalCode = Server.HtmlEncode(TextoPostalCode.Texto) labelPostalCode.Text = Profile.PostalCode End Sub
Cancelar {SetPostalCode_Click(object sender, System.EventArgs e) Profile.PostalCode = Server.HtmlEncode(textPostalCode.Text); labelPostalCode.Text = Profile.PostalCode; }
Quando o perfil de usuário estiver ativado, ASP.NET cria dinamicamente uma propriedade chamada Perfil que adiciona o perfil de usuário ao contexto atual.A pessoa Perfil Propriedades, em seguida, estão disponíveis por meio Profile.PostalCode.
Criar um Page_Load manipulador e adicione o código a seguir realçado.
Sub-Page_Carregar(ByVal Sender As Object, ByVal e As EventArgs) labelPostalCode.Text = Profile.PostalCode End Sub
Cancelar {Page_Load(object sender, System.EventArgs e) labelPostalCode.Text = Profile.PostalCode; }
Esse código exibirá o Profile.PostalCode Valor toda vez que a página é solicitada.
Testando a Propriedade de Perfil PostalCode
Agora você pode testar o CEP Propriedade que você definiu na seção anterior.
Observação: |
---|
Se você estiver trabalhando com um site existente que tenha associação habilitada, certifique-se que você está desconectado. |
Para testar a propriedade PostalCode
Pressionarionar CTRL + F5 para executar o Profiles.aspx a página.
Observação: Se o navegador exibir um erro 502 ou um erro indicando que a página não pode ser exibida, talvez seja necessário configurar seu navegador para ignorar servidores proxy para solicitações locais.Para obter informações Detalhado, consulte Como: Ignorar um servidor proxy para solicitações da Web locais.
Na caixa, digite um código postal e em seguida, clique em Definir código postal.
O código postal que você inseriu aparece na Rótulo o controle.
Feche o navegador para fechar sua sessão atual.
Abra novamente o navegador e solicite a página Profiles.aspx.
O código postal que você digitou anteriormente aparece na Rótulo o controle.
A última Depuração Total o procedimento anterior ilustrado desse armazenamento ASP.NET a CEP Valor.Quando você visitar a página novamente, o ASP.NET pode ler a CEP Valor baseia sua Exclusivo identificação anônima.
Definindo Propriedades Complexas
Em "Configurando e obtendo a propriedade CEP,". anteriormente nessa explicação passo a passo, você criou uma propriedade simples chamada CEP que foi armazenado como uma seqüência.Contidas nesta seção, você irá definir uma propriedade chamada FavoriteURLs que é uma coleção.O ASP.NET pode armazenar Perfil Propriedades de qualquer tipo, mas você devem fornecer informações adicionais quando você está definindo a Perfil Propriedade.
Para Definir a Propriedade FavoriteURLs
Abra o arquivo Web.config.
Adicione o elemento seguinte realçado para a Perfil Elemento que você criou no " Configurando Pro Propriedades do Arquivo " anteriormente nessa explicação passo a passo:
< anonymousIdentification ativado = "true" / ≫ < perfil > < propriedades > < Adicionar nome = "CEP" type="System.String " allowAnonymous = "Verdadeiro" / ≫ < Adicionar nome = "FavoriteURLs" type="System.coleçãos.Specialized.Stringcoleção " allowAnonymous = "true" / ≫ < / propriedades > < / perfil >
Você tem Adicionado um novo Perfil Propriedade chamada FavoriteURLs.Para Perfil As propriedades que são simples não tipos (como Cadeia de Caracteres ou número inteiro), você deve especificar o tipo totalmente qualificado.Aqui, você está especificando que o Perfil Propriedade será uma coleção que conterá as Cadeia de caracteres.
Salve e feche o arquivo web.config.
Definindo e Obtendo a Propriedade FavoriteURLs
Trabalhando com o FavoriteURLs Propriedade, que é uma coleção, é muito como trabalhar com uma coleção em qualquer contexto.Nesta parte a explicação passo a passo, você irá atualizar a página que você criou em " Configurando e obtendo o postal Código Propriedade, " Profiles.aspx Anteriormente essa explicação passo a passo, adicionando um TextBox Controlarar no qual os usuários podem tipo um URL.Quando o usuário clicar em Adicionaro URL é adicionado à FavoriteURLs Propriedade.Você também exibirá a lista atual de URLs favoritas uma caixa do tipo drop-down list.
Para definir e obter a propriedade FavoriteURLs
Sobre o Profiles.aspx página, adicione o seguinte Controles e definir suas propriedades, como observado na tabela a seguir.
Controle
Configurações das propriedades
TextBox
ID = textFavoriteURL
Button
ID AddURL =
Texto Adicionar = URL
ListBox (caixa de listagem)
ID = listFavoriteURLs
Switch Para Exibir Source e em seguida, adicione o seguinte atributo para o Adicionar URL Botão, se o atributo não existir.
OnClick="AddURL_Click"
Criar um Clique em manipulador para Adicionar URLe adicione o código a seguir realçado.
Sub-AddURL_Clique(ByVal Sender As Objeto, _ ByVal e As Sistema.EventArgs) UrlString As String Dim = _ Servidor.HtmlEncode(TextoFavoriteURL.Texto) Se ProArquivo.FavoriteURLs É Nada E ProArquivo.FavoriteURLs = novo _ System.coleçãos.Specialized.Stringcoleção fim se Profile.FavoriteURLs.Add(urlString) DisplayFavoriteURLs() End Sub
Cancelar {AddURL_Click(object sender, System.EventArgs e) Seqüência de caracteres urlString = Server.HtmlEncode(textFavoriteURL.Text); if(Profile.FavoriteURLs == null) {Profile.FavoriteURLs = novo System.Collections.Specialized.StringCollection(); } Profile.FavoriteURLs.Add(urlString); DisplayFavoriteURLs(); }
Na Page_Load manipulador, adicione a seguinte linha realçada de código.
Sub labelPostalCode.Text (ByVal remetente como objeto, como EventArgs e ByVal) Page_Carregar = Profile.PostalCode DisplayFavoriteURLs() End Sub
Void Page_Load (objeto remetente, System.EventArgs e) {labelPostalCode.Text = Profile.PostalCode; DisplayFavoriteURLs(); }
Adicione a seguinte sub-rotina para atualizar a Exibir das URLs na ListBox (caixa de listagem) o controle.
Sub DisplayFavoriteURLs() listFavoriteURLs.DataSource = Profile.FavoriteURLs listFavoriteURLs.DataBind() End Sub
void DisplayFavoriteURLs() { listFavoriteURLs.DataSource = Profile.FavoriteURLs; listFavoriteURLs.DataBind(); }
Testando a Propriedade de Perfil FavoriteURLs
Agora você pode testar o FavoriteURLs Propriedade.
Para testar a propriedade FavoriteURLs
Para executar o Profiles.aspx página, Pressionarionar CTRL + F5.
No primeiro t aqui são não valores na ListBox (caixa de listagem) o controle.
Na caixa, digite um URL e em seguida, clique em Adicionar.
O URL é adicionado à ListBox (caixa de listagem) o controle.
Repita a etapa anterior para adicionar outra URL.
Feche o navegador.
Re Abrir o navegador e Abrir o Profiles.aspx a página.
Observe que o ListBox (caixa de listagem) o controle será preenchido com os URLs que você inseriu antes de fechar o navegador.
Migrando Propriedades de Perfil Durante Logon
Se um usuário está visitando seu site pela primeira vez como um usuário anônimo, mas, em seguida, realiza logon, convém preservar as configurações das propriedades que o usuário estabeleceu enquanto anônimo.Um exemplo típico é um site compras, onde o usuário pode procurar e adicionar itens a um carrinho de compras como um usuário anônimo, mas, em seguida, ele realiza logon para finalizar a compra.Para preservar os valores referentes a um usuário quando ele fizer logon, você deve migrar o usuário do perfil atual de usuário anônimo para o perfil que ele possui como um usuário que realizou logon (autenticado).
Contidas nesta seção, você fará a migração do usuário CEP Configuração.Você deve possuir um site que já esteja configurado para usar identidades de usuários e que tenha uma página de logon.Caso o site com o qual você está trabalhando ainda não tiver sido configurado para lidar com a associação de usuários, use o seguinte procedimento para habilitá-la.Caso seu site já aceite associações, vá para a próxima seção.
Para configurar o site para lidar com associações de usuários
Em Visual Studio, sobre o Site Menu, clique em Configuração do ASP.NET.
Aparecerá a Web Site Administration Tool.
Clique na Segurança Guia.
Clique em Segurançae em seguida, em UsersClique em Selecionar o tipo de autenticação.
Select De a Internet e em seguida, clique em Concluído.
O Da Internet. opção especifica que o aplicativo usará a autenticação de formulários, onde os usuários serão fazer logon para o aplicativo, usando uma página de logon.
Sobre o Segurança Guia, em UsersClique em Criar usuário, e, em seguida, Criar um conta de usuário.
Você pode usar qualquer nome e senha, mas certifique-se de que irá se lembrar do nome e da senha.Para o endereço de email, use seu próprio.(Você não irá enviar mensagens de email nesta explicação passo a passo.)
Após concluída a definição da conta de usuário, feche a Web Site Administration Tool.
A partir de LoginAgrupar na caixa de ferramentas, arraste um Login Controle e um LoginName controlar até a página.
O LoginName Controle não é necessário para log em, mas ajudará você pode ver que você fez logon.
Criando um Manipulador de Migração
Para migrar as configurações de um usuário anônimo para as configurações de um usuário com logon feito, você deve executar a migração quando a identidade do usuário for alterada.O ASP.NET fornece o MigrateAnonymous Evento para exatamente isso; No manipulador para o MigrateAnonymous Evento, você pode transferir as configurações que você deseja preservar.
Para criar um manipulador de migração
No Solução Explorer, clique com o botão direito do mouse no nome do site e em seguida, clique em Adicionar novo item.
Em Modelos Visual Studio instaladoClique em Classe de aplicativo global, e em seguida, clique em Adicionar.
Você não precisa inserir um nome, pois o arquivo sempre é nomeado como Global.asax.
Digite o seguinte código para criar um novo manipulador para o MigrateAnonymous Evento.
Sub <> .PostalCode Profile_MigrateAnonymous(ByVal Sender As Object, _ ByVal e As ProfileMigrateEventArgs) se Profile.GetProfile (e.AnonymousID) " " Em seguida, Profile.PostalCode = .PostalCode Profile.GetProfile (e.AnonymousID) end _ se End Sub
void Profile_MigrateAnonymous(Object sender, ProfileMigrateEventArgs e) { if(Profile.GetProfile(e.AnonymousID).PostalCode != String.Empty) { Profile.PostalCode = Profile.GetProfile(e.AnonymousID).PostalCode; } }
O código obtém o perfil de usuário para o usuário anônimo e extrai o CEP Valor.Em seguida, ele obtém o perfil para a nova identidade de usuário e define o valor equivalente para essa identidade.
Testando a Migração
Para testar a migração, você primeiro irá realizar algumas configurações como um usuário anônimo.Em seguida, irá efetuar logon e verificar se os valores são preservados.
Para testar a migração
Abrir o Profiles.aspx Página e em seguida, pressione CTRL + F5 para executá-lo.
O LoginName Controle Não Exibe tudo, porque você ainda não fez logon.
Se um código postal não é exibido na página, digite um código postal novo e em seguida, clique em Definir código postal.
O código postal para sua identidade anônima atual é exibido na página.
Efetue o logon usando o nome de usuário e senha que você criou em "Migrando Propriedades de Perfil Durante Logon", anteriormente neste passo-a-passo.
O LoginName o controle exibe seu nome de usuário.O código postal que você inseriu como um usuário anônimo ainda está sendo exibido, pois as configurações de código postal foram migradas para o perfil de usuário conectado.
Próximas etapas
Essa explicação passo a passo tem ilustrado os procedimentos Basics para Configurando e usando Perfil Propriedades em aplicativos da Web.Você pode usar Perfil Propriedades de muitos finalidades em seus aplicativos.A lista a seguir sugere áreas adicionais onde talvez você deseja trabalhar com Perfil Propriedades:
Group Perfil Juntas, pois é mais fácil trabalhar com propriedades Perfil Propriedades como uma unidade.
Por exemplo, você pode organizar Perfil Propriedades chamadas Rua, Cidadee CEP Em um grupo chamado. Endereço.
Para obter informações Detalhado, consulte Definir propriedades de perfil ASP.NET.
Criar tipos personalizados, como um carrinho de compras, que você Gerenciar com Perfil Propriedades.
Para obter informações Detalhado, consulte Definir propriedades de perfil ASP.NET.
Selecionar um provedor de perfil diferente.
Para essa explicação passo a passo, você armazenados. Perfil Valores em uma edição padrão SQL Server Banco de Dados.Em aplicativos de produção que serão suportam um número significativo de usuários, é melhor armazenar Perfil Propriedade dados em um banco de dados SQL Server que usa o SqlProfileProvider a classe.
Para obter mais informações, consulte Guia de Provedor de Ferramentas de Administração de Web Site e Criando o banco de dados dos serviços de aplicativos para SQL Server.
Como alternativa, você pode criar um provedor de perfil personalizado que armazena informações no formato e no meio de armazenamento que você codificar.
Para obter informações Detalhado, consulte Implementando um provedor perfil.