从数据访问层返回DTO与DataTable的区别

4
从领域模型中返回DTO类型,与仅返回DataTable相比是否可行?将DAL函数返回DataTable/DataSets,并由BLL将数据映射到业务对象,这样做不是更灵活吗?
2个回答

3

我认为这取决于个人喜好,但尽可能避免使用 DataTables 是我的偏好。

有时候它们确实很方便,但它们没有强类型,这往往会使调试、测试和理解代码变得更加困难。


3
对于小型应用程序,在.NET中,最好基于DataSets和DataTables构建您的架构。您可以直接绑定支持UI、报告,并且在遇到一些更大的领域问题之前它会很好地扩展。查看Fowler的《企业应用架构模式》一书,特别是Table Module和Table Data Gateway模式。
对于更复杂的内容,拥有良好的领域模型以及适当的层(ORM映射器、远程和服务层等)总是值得的。对于这些模式,请查看前面提到的书籍,最好与Eric Evans的《领域驱动设计》一起阅读。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接