繁体   English   中英

独立的DAL设计-特定而通用

[英]Independent DAL Design - Specific and Generic

场景:创建一个用于学习目的的应用程序,并试图使其与数据库无关。

我已经看过很多啤酒屋的体系结构,其中每个数据库都有自己的dal和SqlCommands和DataReaders等的混合物。我没有确定的对与错,但通常在维护,速度等方面考虑到该体系结构.net应用程序的一面对我来说还是很新的,您是否倾向于滚动自己的特定类(如啤酒屋)或使用类似dbProviderFactory之类的东西,其中已经有很多功能?

使用System.Data.Common中的通用类(例如DbCommand,DbDataReader)(与特定的SqlCommand,SqlDataReader类相对)是否有任何利弊?

提前致谢。

据我所知,直接使用DbDataReader更快。 但是,当您要修改UI时,它是不可扩展的。 (例如,使您的Winforms和Webforms项目使用相同的DAL)。

以我的观点,如果您想要更大的灵活性,则可能会降低性能。 关键是您(作为开发人员)有责任在性能与复杂性/可扩展性之间取得平衡。 例如,假设您正在为一家公司设计一个winforms应用程序。 您确定该公司不会更改其数据提供程序(例如,从SQL Server更改为Oracle)。 然后,无需将程序设计为能够连接到不同的数据提供程序。 正如他们所说:吻。 (保持简单愚蠢!; p)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM