这个问题在LINQ to SQL .dbml best practice上的这个问题中得到了一定程度的解决,但我不确定如何添加到问题中。
我们的一个应用程序使用 LINQ to SQL,我们目前有一个用于整个数据库的 .dbml 文件,这变得难以管理。我们正在考虑将其重构为更特定于模块/功能的单独文件,但一个问题是许多高级类必须在多个 .dbml 文件中复制,因为关联不能跨 .dbml 使用。 dbml 文件(据我所知),以及附加的部分类代码。
有没有人解决这个问题,你会提出什么建议?
这个问题在LINQ to SQL .dbml best practice上的这个问题中得到了一定程度的解决,但我不确定如何添加到问题中。
我们的一个应用程序使用 LINQ to SQL,我们目前有一个用于整个数据库的 .dbml 文件,这变得难以管理。我们正在考虑将其重构为更特定于模块/功能的单独文件,但一个问题是许多高级类必须在多个 .dbml 文件中复制,因为关联不能跨 .dbml 使用。 dbml 文件(据我所知),以及附加的部分类代码。
有没有人解决这个问题,你会提出什么建议?
利用命名空间设置。您可以通过单击 ORM 的空白区域来访问它。
这允许我为一组业务规则提供一个用户表和一个用户类,为另一组业务规则提供第二个(但相同的数据存储)用户表和一个用户类。
或者,分解库,这也应该具有根据您公司的命名约定更改命名空间的效果。我从来没有在需要访问每个表的企业应用程序上工作过。
Past a certain size it probably becomes easier to work with the xml instead of the dbml designer.
我也写了一个工具!我的是用于使用 c# 对 dbml 文件进行脚本更改,因此您可以重新运行它们而不会丢失更改。请参阅我的博客http://www.adverseconditionals.com 4 更多详细信息
我们用它来保存 2 个 .dbml 文件的方法。其中一个拥有存储过程,所有生产数据库访问都是通过它完成的。另一个位于单元测试文件夹中,保存表及其关系,用于数据库数据操作和单元测试查询。
我已经编写了一个实用程序来解决这个问题,我需要一个快速应用程序来让您只选择您需要的数据库对象。就我而言,我经常需要一个复杂的视图,但不需要表格。