Compartilhar via


Infra-estrutura de dados dinâmicos do ASP.NET

Este tópico descreve o layout de um site da Web dados dinâmicos do ASP.NET e inclui informações sobre as pastas e arquivos são criados por padrão.

Você pode criar um site da Web dados dinâmicos do ASP.NET no Visual Studio 2008 usando o Site do Dynamic Data modelo.Este modelo gera os controles de usuário, modelos e arquivos de Web do ASP.NET que usa dados dinâmicos para criar a interface de usuário para trabalhar com dados.

Classe de contexto de dados

Um aplicativo Web Dados Dinâmicos requer um MetaModel objeto e um contexto de dados registrados. O contexto de dados pode ser qualquer classe LINQ to SQL (uma instância do System.Data.Linq.DataContext classe) ou uma classe ADO.NET entidade estrutura. A classe de contexto de dados deve estar na pasta App_Code na raiz do aplicativo.Para obter mais informações, consulte Visão geral de modelo Dados Dinâmicos ASP.NET.

Arquivos e pastas

A tabela a seguir descreve os arquivos e pastas criados no nível raiz em um site da Web dados dinâmicos do ASP.NET.

Arquivo ou pasta

Descrição

Dados dinâmicos

Contém pastas para controles personalizados e para páginas que exibem dados.Para obter mais informações sobre as subpastas da pasta dados dinâmicos, consulte Estrutura da pasta DynamicData neste tópico.

Padrão.aspx

Uma página ASP.NET que exibe as tabelas e modos de exibição registrados no MetaModel instância. Cada nome da tabela é renderizado sistema autônomo um HyperLink controle que exibe o Sumário da tabela selecionada.

O arquivo Global.asax

Contém um método para registrar uma instância do MetaModel classe e adicionar rotas para o RouteCollection objeto. Para obter mais informações, consulte Site Web configuração neste tópico.

Site.CSS

Uma folha de estilos em cascata usada por modelos de página de dados dinâmicos e controles.

Site.mestre

O mestre page do site.Modelos de página padrão.aspx e dados dinâmicos, use a página mestra.

Web.config

O arquivo de configuração para o site.Para obter mais informações, consulte Site Web configuração neste tópico.

Configuração do site

Por padrão, um site Dados Dinâmicos inclui arquivos que são comuns em sites da Web do ASP.NET.No entanto, os arquivos incluem informações ou código que é específico para dados dinâmicos.Esta seção fornece informações sobre os arquivos que usa dados dinâmicos.

O arquivo Global.asax

Em um Dados Dinâmicos site, o arquivo global.asax contém um manipulador para o Application_Start Evento gerado quando aplicativo Web da Web é iniciado. No manipulador, o RegisterRoutes método é chamado. The RegisterRoutes método contém um MetaModel instância e uma telefonar comentado-out para RegisterContext. Para ativar sistema autônomo operações de dados dinâmicos, você deve habilitar o RegisterContext método e passar para ele um contexto de dados válido, sistema autônomo um DataContext instância ou contexto ADO.NET entidade estrutura.

Por padrão, o global.asax de arquivo em um dados dinâmicos Web site chama o Add(Type) método para Adicionar roteamento para as páginas lista.aspx, Details.aspx, edição.aspx e Insert.aspx para cada ação.

Modelo de página ListDetails.aspx

Um modelo de página é um arquivo .aspx que inclui controles que podem usar dados dinâmicos para criar a interface do usuário para exibir e editar dados.Rotas definidas no arquivo global.asax determinam quais modelos de página de dados dinâmicos usa para executar ações lista, Details, edição e inserir.Para obter mais informações, consulte Visão geral sobre modelos de página e scaffolding de dados dinâmicos do ASP.NET.

Você pode alterar o roteamento para os modelos de página, adicionando e removendo rota definições no arquivo global.asax.(Rotas alternativas predefinidas incluídas no arquivo global.asax mas são comentadas.) Para obter mais informações, consulte os comentários no arquivo global.asax.

Para tornar visível a todas as tabelas usando dados dinâmicos, você conjunto o ScaffoldAllTables propriedade das ContextConfiguration objeto para true. Como alternativa, você pode conjunto o ScaffoldTableAttribute atributo à true na classe parcial que representa a tabela a ser exibido. The ScaffoldTableAttribute atributo permite seletivamente exibir tabelas usando dados dinâmicos.

Site. arquivo mestre

O site. arquivo mestre é a página mestra do site de dados dinâmico.Ele é usado por todos os modelos de página de dados dinâmicos.O arquivo Site.mestre contém um System.Web.UI.ScriptManager controlar cujos EnablePartialRendering propriedade é conjunto para true. Para obter mais informações, consulte Visão Geral de Páginas Mestras ASP.NET.

  • Observação:   Quando o EnablePartialRendering propriedade é conjunto para true, exceções lançadas pelo resultado do servidor de banco de dados em um erro em time de execução no navegador. Por exemplo, se você tentar atualizar uma linha que possui uma restrição de coluna definida no banco de dados e os dados de atualização violam a restrição, o navegador exibirá um erro em time de execução.Quando o EnablePartialRendering propriedade estiver definida como false, o navegador não exibe uma mensagem de exceção detalhadas. Em vez disso, o navegador exibe um erro HTTP 500 que indica que ocorreu um problema durante o processamento do servidor.Para obter mais informações, consulte Adicionar recursos de cliente e AJAX.

Arquivo Web.config

The Visual Studio Dynamic Data Web Site template generates a Web.config file that contains elements that are specific to Dynamic Data, in addition to those used for all ASP.NET Web sites. In the assemblies section, the following DLLs are added:

  • System.Web.Abstractions

  • System.Web.Routing

  • System.ComponentModel.DataAnnotations

  • System.Web.DynamicData

  • System.Data.Linq

O prefixo da marca "asp:" está registrado para o System.Web.DynamicData espaço para nome e o assembly.

Os seguintes controles do System.Web.DynamicData assembly são usadas por controles na pasta FieldTemplates.

Roteamento de módulo URL UrlRoutingModule é adicionado à httpModules elemento e o system.webServer seção.

Estrutura da pasta DynamicData

A tabela a seguir descreve as subpastas na pasta DynamicData.

Arquivo ou pasta

Descrição

Conteúdo

Por padrão, contém a pasta imagens e dois controles (GridViewPager.ascx e FilterUserControl.ascx).A pasta images contém arquivos gráficos que são usados sistema autônomo ícones para o controle de paginação.FilterUserControl.ascx é um controle de usuário ASP.NET que é usado para filtrar colunas da chave estrangeira.Para obter mais informações, consulte Dados Dinâmicos servidor Web Controls neste documento.

CustomPages

Pasta do contêiner para modelos de página personalizada.Modelos de página personalizados são usados para substituir os modelos de página são definidos no DynamicData\PageTemplates.Por exemplo, se o contexto de dados contiver uma tabela denominada Products, crie uma pasta DynamicData\CustomPages\Products e adicionar páginas .aspx na nova pasta em que são usados para exibir dados de produtos.Uma maneira fácil de iniciar é copiar as páginas da pasta DynamicData\PageTemplates para DynamicData\CustomPages\Products novo e, em seguida, modifique os modelos.Para obter mais informações sobre modelos de página personalizados, consulte Como: Personalizar o layout de uma tabela individual usando um modelo de página personalizado.

FieldTemplates

Contém dados dinâmicos usuário controla que MAP aos tipos de dados do modelo de dados.Para obter mais informações, consulte Visão geral do ASP.NET dinâmico dados campo modelos e Visão geral do ASP.NET dinâmico dados campo modelos.

PageTemplates

Pasta do contêiner para modelos de página que produzem a interface do usuário que é usado para exibir e edição dados.Para obter mais informações, consulte Visão geral sobre modelos de página e scaffolding de dados dinâmicos do ASP.NET.

Controle GridViewPager

O arquivo GridViewPager.ascx é um controle de usuário que deriva de WebControl. Ele é usado para aumentar a paginação quando não houver mais de uma página de dados para uma tabela.O controle de usuário GridViewPager é usado em modelos de página lista.aspx e ListDetails.aspx.

Controle FilterUserControl

O arquivo FilterUserControl.ascx é um controle de usuário ASP.NET que é usado para filtrar chaves externas e booliano colunas.O controle FilterUserControl é usado em modelos de página lista.aspx e ListDetails.aspx.Uma vez para cada chave estrangeira e para cada coluna na tabela booliano é inicializado.

Por exemplo, um site da Web dinâmico de dados que usa o banco de dados AdventureWorksLT, você pode solicitar uma página que exibe dados da tabela Produtos.A tabela Produtos contém a coluna de chave externa ProductCategoryID que faz referência a tabela ProductCategory.Dados dinâmicos infere que a chave estrangeira ProductCategoryID corresponde ao campo nome da tabela ProductCategory.Depois ele substitui o campo de nome das tabelas para o campo ProductCategoryID ProductCategory.

Quando a tabela de produtos do banco de dados AdventureWorksLT for exibida, o FilterUserControl é usado para criar um DropDownList controle de chave estrangeira ProductCategoryID, usando o nome do campo ProductCategoryID inferido. Você pode selecionar uma categoria de produtos para exibir somente as linhas na tabela que contêm a categoria de produto selecionado.Por exemplo, se você selecionar Mountain Bikes, somente as linhas cuja categoria do produto é Mountain Bikes são exibidas.

Também é adicionado um FilterUserControl para cada coluna booliano em uma tabela.Para as colunas booleanas, você pode selecionar todos os campos ou apenas aqueles marcados como true ou false.

Limitações do controle FilterUserControl

O FilterUserControl é mais útil para booliano de colunas e colunas de chave externa com relativamente poucas linhas na tabela de referência.

Consulte também

Conceitos

Visão geral de dados dinâmicos do ASP.NET

Visão geral de modelo Dados Dinâmicos ASP.NET

Visão geral sobre modelos de página e scaffolding de dados dinâmicos do ASP.NET

Outros recursos

LINQ to SQL

ADO.NET Entity Framework