2010-04-13 63 views
3

让DAL从域模型返回一个DTO类型并返回一个DataTable是否可行?让你的DAL函数返回DataTables/DataSet并让你的BLL将数据映射到业务对象不是更松散吗?从DAL返回DTO和DataTable

回答

3

我认为这真的归结为个人喜好,但我希望尽可能避免使用DataTables。

它们有时可能很方便,但它们不是强类型的事实往往会使调试,测试和只理解代码变得更加困难。

3

对于.NET中的小型应用程序,最好将架构基于DataSet和DataTables。你可以直接绑定UI来进行报告,并且它可以很好地扩展,直到遇到一些更大的域问题。检查Fowler的企业应用程序架构模式书,特别是表模块和表数据网关模式。

对于任何更复杂的事情,它总是有好的领域模型,并在其周围有适当的层(ORM映射器,远程处理和服务层等)。对于这些模式,请查看前面提到的书籍,最好使用Eric Evans的Domain Driven Design