gpt4 book ai didi

c# - 与数据库无关的 ASP.Net?

转载 作者:行者123 更新时间:2023-11-29 11:54:42 25 4
gpt4 key购买 nike

我们正在制作一个 ASP.Net 应用程序。我们希望我们的应用程序至少与数据库无关,最值得注意的是与 SQL Server 和 PostgreSQL 兼容。这样做的最佳方法是什么?有哪些常见的陷阱?是否还有一个类或其他东西已经抽象出 SqlConnection 和 PostgreSQL 用于连接的任何东西之间的区别?

(由于价格原因,我们希望成为数据库不可知论者,因此我们可以在这里(在开发中以及稍后在我们自己的托管中)使用 PostgreSQL,并且如果他们愿意,我们的自托管客户可以使用 Sql Server)

最佳答案

所有 ADO.Net 提供程序都扩展了基本接口(interface):

因此理论上您可以针对抽象接口(interface)编写整个 DAL(数据访问层)并利用任何提供程序,包括 MySQL 等第 3 方提供程序。在实践中,没有人成功地做到了这一点。一方面,这些接口(interface)很难针对其进行编程,而且演示软件之外的任何应用程序都会很快遇到 SQL 方言不兼容的问题。

一种更可行的方法是确定多个目标目的地并开发特定的 DAL。 Entity Framework 和存储库模式以及 nHibernate 和所有此类帮助,但没有解决根本问题。

关于c# - 与数据库无关的 ASP.Net?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1929518/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com