Estou aprendendo asp .net c#, mas estou com muitas dúvidas para chamar a camada DAL na BLL e BLL na de visão. Por favor alguém teria algum código pronto para este exemplo? Obrigado.

Exibições: 265

Respostas a este tópico

Sem código pronto, mas indicando conceitualmente, prefiro usar ViewModels.
Camadas do projeto:

View/Controller
Models (view models)
Services (business)
DataAccess (dal/dao) - Dispensável
Entity (entidades)


1. View/Controllers apenas possuem referências das camadas Models e Services.
Os controladores utilizam os serviços para enviar e receber modelos. As visões apenas
apresentam os dados e meta-dados dos modelos.

2. Models são apenas modelos de visão que são trafegados entre view e services.
Normalmente os modelos utilizam anotações do namespace System.Data.ComponentModel para
regionalização e formatação das saídas exibíveis. Como os modelos de entrada de dados podem
variar de acordo com as regras de negócios, digo que os ViewModels podem ser convertidos
ou não em entidades para persistência durante as avaliações de negócios.

3. Services, ou serviços, são as regras de negócios propriamente ditas; também englobam
serviços comuns a todas as lógicas do sistema. Eles recebem como parâmetros os ViewModels da camada model
e podem ou não salvar registros Entity na DataAccess.
Há programadores que preferem considerar o Entity Framework ou NHibernate seu próprio DAO (DAL), fazendo chamadas
diretas ao framework ORM através da camada Services.
Particularmente eu isolo as chamadas de dados na camada DataAccess por conta de futuros possíveis refactors
no framework de persistência.

4. DataAccess recebe como parâmetros Entities e valores escalares, em contra-partida também retorna entities
e valores escalares advindos do banco de dados.
Apenas a camada services é capaz de enchergar a camada DataAccess.

5. Entity, ou camada de entidades, isolada completamente, uma vez que podemos usar qualquer ORM ou ADO para
consulta a dados, nesse intuito essa camada é somente visível pelas camadas DataAccess e Services.

Como mostrar no gridview duas tabelas de acordo com o id de outra, asp .net c#?

RSS

© 2017   Criado por Ramon Durães.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço