【问题标题】:Design: ORM and Application Layers设计:ORM 和应用层
【发布时间】:2011-05-05 00:07:18
【问题描述】:

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

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

或者表示层、业务层和数据层都应该有自己的对象? (这会导致大量代码重复)。

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

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

【问题讨论】:

    标签: asp.net orm architecture


    【解决方案1】:

    这取决于您的业务。如果您正在谈论一个小型应用程序,您可以这样做。 通常最佳实践不希望将 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

    【讨论】:

    • +1 - 只是我可能更坚定地认为这不是一个好主意。
    猜你喜欢
    • 1970-01-01
    • 2011-10-23
    • 2013-07-12
    • 2016-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-21
    • 2011-02-10
    相关资源
    最近更新 更多