我可能已经在多个项目中编写了相同的LINQ to SQL语句4-5次。我甚至不想粘贴它。我们结合使用DBML文件和Repository类。我想在多个项目中共享同一个库,但我也想轻松地更新它,并确保它不会破坏任何项目。做这件事的好方法是什么?
我们有控制台应用程序和MVC web应用程序使用它们自己的DBML风格访问数据库,并且有一些时候主要的数据库更新破坏了它们。
此外,由于目前每个项目都从自身访问数据库,而数据库有时位于另一台服务器上,等等。是否有可能将DB层从每个项目中全部消除?如果我可以通过一个其他应用程序可以直接使用的集中式应用程序来管理所有数据库访问,而不是直接调用数据库,那么它可能会帮助解决上述问题,并对安全性和数据完整性更好。
有什么想法吗?
发布于 2011-09-19 21:40:58
我处理这个问题的方式是使用WCF数据服务。我将我的数据模型和服务放在一个项目中,并将其托管在IIS上。我的其他项目(无论它们是什么)只是将服务引用添加到URI,然后通过网络访问它所需的数据。我的数据库工作都发生在服务上,我的单个项目根本不接触数据库-他们甚至不知道数据库的存在。
它运行得很好,但WCF也有一些“问题”。
如果你想看一些示例代码,请告诉我:-)
https://stackoverflow.com/questions/7471774
复制相似问题