设计:ORM和应用层

时间:2010-11-04 11:07:43

标签: asp.net orm architecture

在设计(然后实现)分层应用程序时:

在所有图层中使用相同的ORM对象是否正确? (这会违背封装)。

或者演示文稿,业务和数据层应该都有自己的对象吗? (这将导致大量代码重复)。

e.g。 (仅用于说明问题):如果在数据层和Visual Studio的O / R设计器中使用Linq to SQL来生成ORM对象,那么这些对象也应该在业务层和表示层中使用。

即:与应用程序处理横切问题的实体关联的对象是什么?

1 个答案:

答案 0 :(得分:2)

这取决于您的业务。如果你在谈论一个小应用程序,你可以做到。 通常,最佳实践不希望将实体从DAL暴露给表示,因为这样做的层将紧密耦合,您可以暴露顶层无意义的数据(表示) 另一方面,你不应该为每一层创建一堆对象。 这个问题总是难以回答,因为它真的取决于你的需求。 你可以看看这本书只是为了了解

http://books.google.co.uk/books?id=FyWZt5DdvFkC&printsec=frontcover&dq=martin+fowler+enterprise+architecture&source=bl&ots=eEEx4ATr5C&sig=sSmDmffOSALWfFZEaPyhkwwEq_I&hl=en&ei=SJnSTMuSJIHm4AaK9tW5Dw&sa=X&oi=book_result&ct=result&resnum=6&ved=0CDAQ6AEwBQ#v=onepage&q&f=false