Visão geral de aplicativo de dados de N camadas
Aplicativos de dados N-tier são aplicativos de dados que são separados em várias camadas.Também chamados "aplicativos distribuídos" e "aplicativos multicamadas", aplicativos de n camadas separam o processamento em camadas discretas que são distribuídas entre o cliente e o servidor.Ao desenvolver aplicativos que acessam dados, você deve ter uma separação clara entre as várias camadas que compõem o aplicativo.
Um aplicativo de n camadas típico inclui uma camada de apresentação, uma camada intermediária e uma camada de dados.A maneira mais fácil para separar as várias camadas em um aplicativo de n camadas é criar projetos distintos para cada camada que você deseja incluir no seu aplicativo.Por exemplo, a camada de apresentação pode ser um aplicativo de Formulários do Windows, enquanto a lógica de acesso a dados pode ser uma biblioteca de classes localizada na camada intermediária.Além disso, a camada de apresentação pode se comunicar com a lógica de acesso a dados na camada intermediária por meio de um serviço como um WCF Service.Separar componentes do aplicativo em camadas separadas aumenta a manutenabilidade e escalabilidade do aplicativo.Ele faz isso permitindo adoção mais fácil de novas tecnologias que podem ser aplicadas a uma camada única sem precisar recriar a solução inteira.Além disso, aplicativos de n camadas normalmente armazenam informações sigilosas na camada intermediária, que mantém isolamento da camada de apresentação. intermediária.
Visual Studio contém vários recursos para ajudar os desenvolvedores a criar aplicativos de n camadas:
O Dataset Designer fornece uma propriedade DataSet Project que permite que você separe o DataSet (camada de entidade de dados) e TableAdapters (camada de Acesso a Dados) em projetos distintos.
O Object Relational Designer (O/R Designer) fornece configurações para gerar as classes DataContext e de dados em namespaces separados.Isso permite separação lógica das camadas entidade de dados e acesso a dados.
LINQ to SQL fornece o método Attach que permite que você reuna o DataContext de diferentes camadas em um aplicativo.Para obter mais informações, consulte N-Tier and Remote Applications with LINQ to SQL.
A caixa de diálogo Configure Data Synchronization, que ajuda você a configurar a sincronização entre um banco de dados remoto e o Local Database Cache, fornece uma opção de configuração avançada.Esta opção permite que você defina servidor e cliente para projetos separados.Para obter mais informações, consulte Demonstra Passo a passo: Adicionando um cache local do banco de dados a um aplicativo de N-tier.
Camada de apresentação
A camada de apresentação é a camada na qual os usuários interagem com um aplicativo.Ela geralmente também contém lógica adicional do aplicativo.Componentes típicos da camada de apresentação incluem o seguinte:
Componentes de vinculação de dados, como o BindingSource e BindingNavigator.
Objeto de representações de dados, como classes de entidade LINQ to SQL para uso na camada de apresentação.
Bancos de dados locais, como um Local Database Cache que pode ser sincronizado com o servidor na camada de dados usando Microsoft Synchronization Services for ADO.NET no Aplicativos ocasionalmente conectados.
A ilustração a seguir mostra os recursos e tecnologias que estão disponíveis no Visual Studio e onde eles podem caber na camada de apresentação de um aplicativo de n camadas.
Camada de apresentação
A fileira de apresentação normalmente acessa a camada intermediária usando uma referência de serviço (por exemplo, um Windows Communication Foundation Services e serviços de dados ADO.NET aplicativo). A camada de apresentação não acessa diretamente a camada de dados.A camada de apresentação se comunica com a camada de dados por meio do componente de acesso a dados na camada intermediária.
Camada intermediária
A camada intermediária é a camada que a camada de apresentação e a camada de dados usam para se comunicar.Componentes típicos da camada intermediária incluem o seguinte:
Lógica comercial, como regras comerciais e validação de dados.
Componentes de acesso a dados e lógica, como a seguir:
Objeto de representações de dados, como classes de entidade LINQ to SQL.
Serviços de aplicativo comuns, como autenticação, autorização e personalização.
A ilustração a seguir mostra os recursos e tecnologias que estão disponíveis no Visual Studio e onde eles podem caber na camada intermediária de um aplicativo de n camadas.
Camada intermediária
A camada intermediária normalmente se conecta à camada de dados usando uma conexão de dados.Esta conexão de dados é normalmente armazenada no componente de acesso a dados.
Camada de dados
A camada de dados é basicamente o servidor que armazena os dados de um aplicativo (por exemplo, um servidor executando o SQL Server).
A ilustração a seguir mostra os recursos e tecnologias que estão disponíveis no Visual Studio e onde eles podem caber na camada de dados de um aplicativo de n camadas.
Camada de dados
A camada de dados não pode ser acessada diretamente a partir do cliente na camada de apresentação.Em vez disso, o componente de acesso a dados na camada intermediária é usado para comunicação entre as camadas de dados e de apresentação.
Ajuda para desenvolvimento de N camadas
Os tópicos a seguir fornecem informações sobre como trabalhar com aplicativos de n camadas:
Como: Separar Datasets e TableAdapters em diferentes projetos
Demonstra Passo a passo: Criando um aplicativo de dados N-tier
Demonstra Passo a passo: Adicionando validação a um aplicativo de dados N-tier
Demonstra Passo a passo: Adicionando um cache local do banco de dados a um aplicativo de N-tier
N-Tier and Remote Applications with LINQ to SQL
Consulte também
Tarefas
Demonstra Passo a passo: Criando um aplicativo de dados N-tier
Conceitos
Datasets in Visual Studio Overview