Compartilhar via


Como: Compilar e executar o exemplo de provedor de analisar

Os tópicos nesta seção incluem o código para um exemplo de provedor de perfil ASP.NET.O exemplo de provedor utiliza o Framework .NET de provedor de dados para ODBC para conectar a uma fonte de dados ODBC.O exemplo utiliza um banco de dados Access como fonte de dados.

Este tópico descreve detalhes de implementação sobre o exemplo de provedor de perfil e descreve como criar o exemplo e configurar um aplicativo ASP.NET para usar o provedor Exemplo.

Observação:

Como fontes de dados oferecem suporte a diferentes sintaxes SQL, Alguns comandos SQL funcionarão com uma fonte de dados e não com outra.Por esse motivo, é recomendável que você crie um provedor de perfil específico para sua fonte de dados mesmo se você estiver usando o .NET Framework Data Provider para ODBC ou o .NET Framework Data Provider para OLEDB para acessar a fonte de dados.Por exemplo, você pode criar separados fornecedores, como SybaseProfileProvider, OracleProfileProvider, e assim por diante.

Para ver o exemplo de código de provedor, consulte Exemplo de Implementação do Provedor de Perfil.

Criando banco de dados do provedor

O provedor foi projetado para ler e gravar dados em três tabelas de banco de dados: Perfis, StockSymbols e ProfileData.O exemplo de provedor de analisar suporta duas propriedades de analisar: uma lista de símbolos de ações e um CEP (postal).

Cada perfil de usuário é identificado na tabela de perfis do banco de dados.Informações de perfil, como o nome do aplicativo e última data atividade estão contidas nesta tabela.A tabela de perfis inclui automaticamente uma chave primária incrementada que é usada para identificar exclusivamente cada linha e relacionar a tabela a outras tabelas no banco de dados que contêm valores de Propriedade perfil.

A tabela StockSymbols contém os valores para a lista de símbolos de ações armazenados e recuperados usando a propriedade StockSymbols.A tabela StockSymbols tem um relacionamento um-para-muitos com a tabela de perfis, porque um perfil de usuário único pode controlar qualquer número de símbolos de ações.

A propriedade ZipCode é armazenada na tabela ProfileData.A tabela ProfileData tem um relacionamento um-para-um com a tabela de perfis.

Para criar as tabelas do banco de dados para armazenamento de perfis

  1. Crie um novo banco de dados do Microsoft Access ou abra um arquivo existente.

    Observação:

    Se você armazenar seu banco de dados nas pastas do arquivo do seu aplicativo da Web, é recomendável que você armazene o banco de dados na pasta App_Data do aplicativo.O conteúdo do App_Data está disponível no seu código de aplicativo, mas não está exposto às solicitações da Web.Além disso, o processo ASP.NET tem permissões de leitura e gravação na pasta App_Data.

  2. No Access ou outra ferramenta que possa criar tabelas em um banco de dados Access, emita a seguinte consulta de definição de dados para criar a tabela de perfis:

    CREATE TABLE Profiles
    (
      UniqueID AutoIncrement NOT NULL PRIMARY KEY,
      Username Text (255) NOT NULL,
      ApplicationName Text (255) NOT NULL,
      IsAnonymous YesNo, 
      LastActivityDate DateTime,
      LastUpdatedDate DateTime,
        CONSTRAINT PKProfiles UNIQUE (Username, ApplicationName)
    )
    
  3. Emita a seguinte consulta de definição de dados para criar a tabela StockSymbols:

    CREATE TABLE StockSymbols
    (
      UniqueID Integer,
      StockSymbol Text (10),
        CONSTRAINT FKProfiles1 FOREIGN KEY (UniqueID)
          REFERENCES Profiles
    )
    
  4. Emita a seguinte consulta de definição de dados para criar a tabela ProfileData:

    CREATE TABLE ProfileData
    (
      UniqueID Integer,
      ZipCode Text (10),
        CONSTRAINT FKProfiles2 FOREIGN KEY (UniqueID)
          REFERENCES Profiles
    )
    

Fornecendo acesso a Log de eventos

Se o exemplo de provedor enumerar uma exceção quando trabalhar com uma fonte de dados, o provedor escreve os detalhes da exceção ao log do evento Windows Application ao invés de retornar a exceção à aplicação ASP.NET.Isso é efeito como medida de seguranção para manter privadas as informações sobre a fonte de dados de ser exposta na aplicação ASP.NET.

O exemplo de provedor especifica um evente Source de "OdbcProfileProvider".Antes do seu aplicativo ASP.NET ser capaz de gravar no log de eventos do aplicativo com êxito, será necessário criar acesso para o log de eventos.

Observação:

Se desejar o provedor exemplo grave exceções no log de eventos, você pode conjunto o writeExceptionsToEventLog atributo à false na configuração do provedor na Web. arquivo de configuração.

Para fornecer acesso ao log de eventos

  • Usando o Regedit.exe ou outra ferramenta de edição de Registro Windows, crie a chave do Registro a seguir:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\OdbcProfileProvider
    

Criando o provedor Exemplo

Para usar o provedor exemplo, você deve tornar o código disponíveel para o seu aplicativo da Web.Você pode fazer isso de duas maneiras:

  • Coloque o código-fonte do provedor exemplo na pasta App_Code do aplicativo.Nesse caso, não é preciso manualmente compilar o código exemplo.

  • Compile o código e coloque o assembly resultante na pasta Bin do aplicativo, ou fortemente denomine-o coloque na cache global de assemblies.

Para testar o provedor Exemplo sem compilar manualmente

  1. Se o aplicativo ainda não tiver um, crie uma pasta chamada App_Code na raiz do aplicativo.

  2. Na pasta App_Code, crie um arquivo de texto denominado OdbcProfileProvider.vb ou OdbcProfileProvider.cs, dependendo de qual linguagem de programação você deseja usar.

    Observação:

    Se você já tiver o código-fonte no Diretório App_Code do seu aplicativo, use a versão do provedor exemplo escrito na mesma linguagem que o código existente no Diretório.ASP.NET irá compilar o provedor quando uma página de seu aplicativo ASP.NET for solicitada primeiramente.

  3. Copie e cole o código-fonte Exemplo (na linguagem apropriado) para o arquivo de texto correspondente e salve o arquivo.

Para compilar o provedor Exemplo

  1. Crie uma pasta para os arquivos de origem para controles personalizados e classes relacionadas.

  2. Na pasta código-fonte, crie um arquivo de texto denominado OdbcProfileProvider.vb ou OdbcProfileProvider.cs, dependendo da qual linguagem de programação você deseja usar.

    Observação:

    Não coloque o código-fonte na pasta App_Code se também pretender manualmente compilar o exemplo e adicionar seu assembly para a pasta Bin.Se fizer isso, o tipo do provedor existirá no assembly compilado e no assembly gerado dinamicamente criado pelo ASP.NET a partir da pasta App_Code.Isso criará uma referência ambígua ao carregar o provedor e qualquer código que referencia o tipo irá gerar um erro de compilador.

  3. Copie e cole o código-fonte para cada exemplo para o arquivo de texto correspondente e salve o arquivo.

  4. Execute o seguinte comando a partir da pasta código-fonte para compilar os controles e classes relacionados em um assembly.

    vbc /out:OdbcProfileProvider.dll /t:library OdbcProfileProvider.vb /r:System.Web.dll /r:System.Configuration.dll
    
    csc /out:OdbcProfileProvider.dll /t:library OdbcProfileProvider.cs /r:System.Web.dll /r:System.Configuration.dll
    

    O opção do compilador /t:library impele o compilador a criar uma biblioteca (ao invés de executar um assembly).A opção /outfornece um nome para o conjunto de módulos e a opção /r lista os módulos que estão vinculados ao seu conjunto de módulos.

    Observação:

    Se você não pode executar o comando compilador, você deve adicionar o caminho de instalação do .NET estrutura para o PATH variável antes de executar o comando. No Windows, clique com o botão direito do mouse My Computer, clique em Properties, clique na guia Advanced e, em seguida, clique no botão Environment Variables.Na lista Variáveis do sistema, clique duas vezes na variável Path.Na caixa de texto Variable value, adicione um ponto-e-vírgula (;) até o final dos valores existentes na caixa de texto e digite o caminho da instalação do .NET Framework.The .NET Framework is usually installed in the Windows installation folder at \Microsoft.NET\Framework\versionNumber.

Configurando o provedor exemplo em um aplicativo ASP.NET

Para usar o provedor exemplo com um aplicativo ASP.NET, você deve configurar o aplicativo para registrar o provedor.

A configuração exemplo supõe que seu site da Web esteja configurado para usar autenticação de formulários Backup e inclui uma página ASP.NET chamada Login.aspx que permite aos usuários fazer logon e estabelecer uma identidade de usuário.A configuração exemplo oferece também suporte a autenticação anônima, para que os usuários não sejam obrigados a efetuar logon.

Para configurar um aplicativo para usar o provedor Exemplo

  1. Criar uma página ASP.NET chamada Login.aspx e siga um destes procedimentos:

    • Adicione um controle Login nele, se a aplicação já estiver configurada para usar membro ASP.NET.

    • Crie um formulário de login e use uma autenticação de formulários para autenticar usuários.Para obter detalhes, consulte:Como: Implementar autenticação de formulários simples.

      Observação:

      O elemento de configuração necessária para autenticação de formulários é ilustrada na etapa 4.

  2. Crie um DSN chamado " OdbcProfile " em seu computador e configure-o para incluir informações de conexão para o banco de dados Access que você criou anteriormente.

  3. Se seu aplicativo ASP.NET não tiver um ainda, crie um arquivo de texto denominado Web.config na pasta raiz do aplicativo.

  4. No arquivo Web.config, adicione os seguintes elementos:

    <configuration>
      <connectionStrings>
        <add name="OdbcProfile" connectionString="DSN=OdbcProfile;" />
      </connectionStrings>
    
      <system.web>
        <authentication mode="Forms" >
          <forms loginUrl="login.aspx"
            name=".ASPXFORMSAUTH" />
        </authentication>
    
        <anonymousIdentification enabled="true" />
    
        <profile defaultProvider="OdbcProvider">
          <providers>
            <add
              name="OdbcProvider"
              type="Samples.AspNet.Profile.OdbcProfileProvider" 
              connectionStringName="OdbcProfile" /> 
          </providers>
    
          <properties>
            <add name="ZipCode" 
              allowAnonymous="true" />
            <add name="CityAndState" 
              provider="AspNetSqlProfileProvider" 
              allowAnonymous="true" />
            <add name="StockSymbols" 
              type="System.Collections.ArrayList" 
              allowAnonymous="true" />
          </properties>
        </profile>
      </system.web>
    </configuration>
    

Consulte também

Conceitos

Implementando um provedor perfil

Visão geral sobre propriedades de perfil do ASP.NET

Outros recursos

Páginas Mestras do ASP.NET

Temas e Aparências do ASP.NET