Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Modelo de Arquitetura MVC + EF
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  22 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Eduardo Pires  
View profile   Translate to Translated (View Original)
 More options Sep 3 2012, 9:15 pm
From: Eduardo Pires <head...@gmail.com>
Date: Mon, 3 Sep 2012 22:15:28 -0300
Local: Mon, Sep 3 2012 9:15 pm
Subject: Modelo de Arquitetura MVC + EF

Pessoal,

Lendo um pouco sobre a serie patterns &
practices<http://msdn.microsoft.com/en-us/library/ff921345> da
Microsoft, encontrei esse guia "Client-Side Web Development for Modern
Browsers" e sugerem esse modelo (imagem).

Cada um tem uma forma de fazer, acredito que não muito diferente dessa que
estou abordando, mas e ai o que acham?

Ao meu ver está ok, atende a prática do DDD, faz uma separação lógica das
camadas sem frescuras, como um modelo inicial eu gostei.
Agora gostaria de propor um bate papo com vocês, se acrescentariam mais
algo ou se conseguem enxergar algum possível problema em obedecer esse
modelo.

No mais, fica como sugestão para quem não adotou nenhum modelo.
O guia todo esta aqui: http://msdn.microsoft.com/en-us/library/hh404093.aspx

[ ]'s

[image: Hh404093.f50cd137-c414-4c13-84cd-ff1dcabed82e(en-us,PandP.10).png]


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Heitor Estrela  
View profile   Translate to Translated (View Original)
 More options Sep 3 2012, 9:52 pm
From: Heitor Estrela <heitorestr...@gmail.com>
Date: Mon, 3 Sep 2012 18:52:10 -0700 (PDT)
Local: Mon, Sep 3 2012 9:52 pm
Subject: Re: Modelo de Arquitetura MVC + EF

> Gostei muito do modelo, ultimamente venho utilizando basicamente uma
> arquitetura parecida só o que mudo é o Data Access onde uso o MongoDB.

Uma projeto de testes unitários também vai bem.

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mário Meyrelles  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 8:12 am
From: Mário Meyrelles <mariomeyrel...@gmail.com>
Date: Tue, 4 Sep 2012 09:11:58 -0300
Local: Tues, Sep 4 2012 8:11 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

A única coisa que não curti muito é a utilização de DataAnnotations para
validação. Mas atende tb.

Mas de resto parece atender sim. O interessante é que tem muitas coisas a
mais nesse projeto - acho que vale a pena estudá-lo com mais calma...

2012/9/3 Heitor Estrela <heitorestr...@gmail.com>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Guilherme de Souza  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 8:16 am
From: Guilherme de Souza <guici...@gmail.com>
Date: Tue, 4 Sep 2012 09:16:41 -0300
Local: Tues, Sep 4 2012 8:16 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF
Mario vc poderia dizer qual o problema em utilizar DataAnnotations?

Em 4 de setembro de 2012 09:11, Mário Meyrelles
<mariomeyrel...@gmail.com> escreveu:

--
Guilherme Rares
Consultor de Tecnologia
Cel: (11) 7368-8469

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mário Meyrelles  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 8:30 am
From: Mário Meyrelles <mariomeyrel...@gmail.com>
Date: Tue, 4 Sep 2012 09:30:14 -0300
Local: Tues, Sep 4 2012 8:30 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Não é problema nenhum. Mas acredito que o uso do Fluent Validation torna
muito mais flexível a criação de regras de validação de tela. Regras
ligeiramente mais complexas como "DataFim >= DataInício" já ficam mais
chatas de fazer só com data annotations. Talvez dê pra fazer mas não sei
como se faz rs.

2012/9/4 Guilherme de Souza <guici...@gmail.com>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Guilherme de Souza  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 9:22 am
From: Guilherme de Souza <guici...@gmail.com>
Date: Tue, 4 Sep 2012 10:22:09 -0300
Local: Tues, Sep 4 2012 9:22 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF
Entendi Mario, porém este ex que vc deu é bem simples de ser
implementado com DataAnnatations;

Em 4 de setembro de 2012 09:30, Mário Meyrelles
<mariomeyrel...@gmail.com> escreveu:

--
Guilherme Rares
Consultor de Tecnologia
Cel: (11) 7368-8469

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Renato Cantarino  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 9:25 am
From: Renato Cantarino <renato.cantar...@gmail.com>
Date: Tue, 4 Sep 2012 10:25:14 -0300
Local: Tues, Sep 4 2012 9:25 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

O exemplo das datas, tem q ser implementada um classe que herda de
RangeAtributte

Em 4 de setembro de 2012 10:22, Guilherme de Souza <guici...@gmail.com>escreveu:

--

Att,
Renato Cantarino


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mário Meyrelles  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 9:51 am
From: Mário Meyrelles <mariomeyrel...@gmail.com>
Date: Tue, 4 Sep 2012 10:50:50 -0300
Local: Tues, Sep 4 2012 9:50 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Dando uma olhada, eu vi que é realmente muito simples.

Mas ainda assim, usando o fluent você consegue definir esta regra em apenas
uma única linha, sem ter que herdar nada. De qualquer forma, os 2 jeitos
atendem e não vejo problema em combinar as 2 técnicas para gerar código
mais enxuto.

2012/9/4 Renato Cantarino <renato.cantar...@gmail.com>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Renato Cantarino  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 9:52 am
From: Renato Cantarino <renato.cantar...@gmail.com>
Date: Tue, 4 Sep 2012 10:52:23 -0300
Local: Tues, Sep 4 2012 9:52 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Realmente, 1 linha é melhor do que uma classe.

Em 4 de setembro de 2012 10:50, Mário Meyrelles
<mariomeyrel...@gmail.com>escreveu:

--

Att,
Renato Cantarino


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fernando Mondo  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 10:00 am
From: Fernando Mondo <fernando.mo...@gmail.com>
Date: Tue, 4 Sep 2012 11:00:19 -0300
Local: Tues, Sep 4 2012 10:00 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Eu gosto do Fluent porque eu suo Child View Model, e encho de conficionais
(When) além de acesso a banco.

Porém o correto é que eu deixa-se estas validações para outra camada, então
acho que o  Fluent me acaba levando tentenado a uma Smart UI,
infelizmente...

Em 4 de setembro de 2012 10:52, Renato Cantarino <renato.cantar...@gmail.com


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Eduardo Pires  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 6:34 pm
From: Eduardo Pires <head...@gmail.com>
Date: Tue, 4 Sep 2012 19:34:13 -0300
Local: Tues, Sep 4 2012 6:34 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

@heitorestrela, Eu não considero projeto de testes como parte da
arquitetura, mas com certeza tem sim :)

Eu uso DataAnnotations, no caso de Fluent Validation (nunca usei) como
utilizo classes POCO será que não fere o conceito?

2012/9/4 Fernando Mondo <fernando.mo...@gmail.com>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Winston Pacheco Junior  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 6:42 pm
From: Winston Pacheco Junior <winston.pach...@gmail.com>
Date: Tue, 4 Sep 2012 15:42:04 -0700
Local: Tues, Sep 4 2012 6:42 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Você usa repository Eduardo?

Em 4 de setembro de 2012 15:34, Eduardo Pires <head...@gmail.com> escreveu:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Eduardo Pires  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 6:49 pm
From: Eduardo Pires <head...@gmail.com>
Date: Tue, 4 Sep 2012 19:49:33 -0300
Local: Tues, Sep 4 2012 6:49 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

O pattern repository? Estou pensando em usar nesse projeto que estou
começando...

2012/9/4 Winston Pacheco Junior <winston.pach...@gmail.com>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Winston Pacheco Junior  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 7:35 pm
From: Winston Pacheco Junior <winston.pach...@gmail.com>
Date: Tue, 4 Sep 2012 16:34:58 -0700
Local: Tues, Sep 4 2012 7:34 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Porque desse desenho, acredito q é a parte mais inútil e incoerente...
O Entity Framework já é um unit of work, porque você teria que esconder ele
do seu negócio?

Em 4 de setembro de 2012 15:49, Eduardo Pires <head...@gmail.com> escreveu:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fernando Mondo  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 10:17 pm
From: Fernando Mondo <fernando.mo...@gmail.com>
Date: Tue, 4 Sep 2012 23:17:36 -0300
Local: Tues, Sep 4 2012 10:17 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Winston, repository facilita os teste e deixa seu software muito mais
legivel, pois as vezes o lambda pode ser complexo demais, além de se
repetir em varios pontos da aplicação...

Em 4 de setembro de 2012 20:34, Winston Pacheco Junior <
winston.pach...@gmail.com> escreveu:

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Eduardo Pires  
View profile   Translate to Translated (View Original)
 More options Sep 4 2012, 11:46 pm
From: Eduardo Pires <head...@gmail.com>
Date: Wed, 5 Sep 2012 00:45:57 -0300
Local: Tues, Sep 4 2012 11:45 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

O beneficio desse pattern é abordado naquele link, já vi pessoas defendendo
e outras até lhe considerando um anti pattern, como o Fernando falou os
benefícios são bem estes mesmos:

The Repository pattern assists in separating data storage concerns from the
application logic. This pattern is especially beneficial when you use the
ADO.NET Entity Framework because it allows you to hide ADO.NET Entity
Framework-specific classes such as *DbContext* and *DbSet*, to optimize the
shape of the data returned to the application, to coordinate updates, and
to unit test your application without requiring access to physical data
storage. See the "Further Reading" section for a formal definition of the
repository pattern.

2012/9/4 Fernando Mondo <fernando.mo...@gmail.com>

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mário Meyrelles  
View profile   Translate to Translated (View Original)
 More options Sep 5 2012, 7:59 am
From: Mário Meyrelles <mariomeyrel...@gmail.com>
Date: Wed, 5 Sep 2012 08:59:19 -0300
Local: Wed, Sep 5 2012 7:59 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Acho que vale a pena fazer algum esforço para encapsular o repositório em
formas mais fáceis de se entender para o consumidor final. Tipo, não vale a
pena só criar os métodos básicos como GetAll, GetById, Find, etc. Compensa
criar métodos mais claros como "ObterUsuáriosAtivos",
"ObterClientesPrimeiraCompra", etc... Mas é um custo, que sem dúvida,
precisa ser analisado.

Um pattern que eu já vi nesta lista é criar extension methods no
repositório para isso rs. Nunca fiz assim, mas achei a idéia interessante.

O que não pode é lógica de manipular o repositório se espalhar pelo código
todo. Aí pouco adianta ter um repositório - é mais fácil expor um ISession
/ DbContext-DbSet da vida.

2012/9/5 Eduardo Pires <head...@gmail.com>

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Winston Pacheco Junior  
View profile   Translate to Translated (View Original)
 More options Sep 5 2012, 9:00 am
From: Winston Pacheco Junior <winston.pach...@gmail.com>
Date: Wed, 5 Sep 2012 10:00:11 -0300
Local: Wed, Sep 5 2012 9:00 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Enfim, nesse caso posso dizer que é gosto. Eu não gosto.
Quanto aos testes, é possível testar numa boa usando ISession...
O Entity Framework ainda tem essa coisa de DbSet? Eu sempre achei q eles
tinham se enganado no design disso e iam tirar nas versões futuras. O
DbContext tem os DbSet's dentro dele? Se isso ainda funciona dessa forma,
acho importante o Repository.
A ideia dos Extensions Methods eu acho legal, principalmente se a query se
repete.
Uma curiosidade: esse projeto que você está fazendo é pra estudar ou é "pra
valer"? Se for para estudar e aprender, você deveria tentar também outras
formas de acesso a dados, muitas vezes até SQL direto é melhor. Além disso
existem os Micro ORMs. Hoje em dia só não tem opção quem não quer.

Em 5 de setembro de 2012 00:45, Eduardo Pires <head...@gmail.com> escreveu:

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mário Meyrelles  
View profile   Translate to Translated (View Original)
 More options Sep 5 2012, 9:44 am
From: Mário Meyrelles <mariomeyrel...@gmail.com>
Date: Wed, 5 Sep 2012 10:44:26 -0300
Local: Wed, Sep 5 2012 9:44 am
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Olá Winston,

Eu entendi que é mais fácil usar um ISession do que um DbContext para
testar. É isso mesmo?

Respondendo, sim - ainda o DbSet fica dentro de um DbContext. Pq vc não
gosta disso?

2012/9/5 Winston Pacheco Junior <winston.pach...@gmail.com>

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Winston Pacheco Junior  
View profile   Translate to Translated (View Original)
 More options Sep 5 2012, 12:10 pm
From: Winston Pacheco Junior <winston.pach...@gmail.com>
Date: Wed, 5 Sep 2012 13:10:24 -0300
Local: Wed, Sep 5 2012 12:10 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Quanto ao ISession, eu acho mais fácil "mocar" uma interface que uma classe
concreta.
Porque eu acho que a Session poderia, pra não dizer que deveria, ser mais
inteligente do que isso. Se eu já tenho o mapeamento do objeto, porque eu
deveria criar uma classe pra registrar na minha Session que eu mapeei um
objeto? Porque eu não utilizaria Generics como em diversas outras soluções
de UoW? Sinceramente não vejo uma razão pra isso.

Em 5 de setembro de 2012 10:44, Mário Meyrelles
<mariomeyrel...@gmail.com>escreveu:

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mário Meyrelles  
View profile   Translate to Translated (View Original)
 More options Sep 5 2012, 12:57 pm
From: Mário Meyrelles <mariomeyrel...@gmail.com>
Date: Wed, 5 Sep 2012 13:56:53 -0300
Local: Wed, Sep 5 2012 12:56 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

Bem, no caso do EF, com Code First, não tem mapeamento (a não ser que vc
queria). Aí o DbSet representa o que o será criado no banco de dados. E o
DbSet é um DbSet<T> então o repositório consegue ficar genérico. E na
prática, o EF ja é por si uma solução UoW com Generics. Acho que as versões
mais atuais do EF tão mais bacanas.

Quanto a mocar o ISession, não vejo grande utilidade nisso...  Mas eu já vi
muita gente fazer isso. Para mim é algo como testar o martelo para então
testar se o prego foi martelado adequadamente.

2012/9/5 Winston Pacheco Junior <winston.pach...@gmail.com>

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Winston Pacheco Junior  
View profile   Translate to Translated (View Original)
 More options Sep 5 2012, 2:14 pm
From: Winston Pacheco Junior <winston.pach...@gmail.com>
Date: Wed, 5 Sep 2012 15:13:59 -0300
Local: Wed, Sep 5 2012 2:13 pm
Subject: Re: [dotnetarchitects] Re: Modelo de Arquitetura MVC + EF

c tá falando de fazer somente testes integrados?

Em 5 de setembro de 2012 13:56, Mário Meyrelles
<mariomeyrel...@gmail.com>escreveu:

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »