Pergunta

Onde na solução / projetos, devo colocar os modelos para a camada de acesso a dados. Por exemplo, se eu tiver um módulo de login que precisa usar uma tabela de usuários em um banco de dados, e eu tenho um modelo User.cs. Onde é que esse arquivo ir. Se outros módulos precisam ser capazes de acessar este User.cs para obter informações, então eu não posso colocá-lo no módulo. Mas então eu não vejo como isso pode permanecer baixo acoplamento.

Foi útil?

Solução

Para o acoplamento, você normalmente armazenar uma interface para esses objetos em um conjunto separado para todos os outros projectos para se referir a. Na minha empresa nós chamamos isso de "Contratos" montagem e que, geralmente, contém apenas interfaces ou tipos simples .

Quanto , onde o modelo deve ir, se você manter suas interfaces em uma DLL separada para que todos possam usar, você pode colocar o seu modelo onde quiser . Geralmente eu considero tanto meus contratos WCF ou meu ORM (como Linq2Sql, etc) tipos para ser o meu modelo e eu armazená-los onde quer que eu normalmente armazenar esses tipos de coisas. O "modelo" que eu considero ser um pouco mais fluido ... onde quer que se sente bem.

Eu sou mais rígida sobre Visualizações e ViewModels estar em namespaces que terminam com "Visualizações" e "ViewModels"

Espero que isso ajude.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top