【发布时间】:2009-04-14 20:22:51
【问题描述】:
我不确定所涉及的确切术语,所以请多多包涵。
我有一个 ASP.NET MVC 网站——我第一次使用它——我决定将数据库模型(换句话说,dbml 文件)分布在 2 个逻辑映射中。我认为它们是合乎逻辑的,直到我决定在两个 dbml 文件中都包含我的“标签”表。现在这会使生成代码复制一个“标签”类,因此不允许我编译。
解决这个问题的明显方法是摆脱我在 2 个模型中的逻辑拆分,只需将所有表及其关系打包成一个巨大的 dbml 文件。如果我找不到简单的解决方案,我会这样做。
有没有人能解决这个可能很常见的问题?这是从一个模型继承另一个模型以使各种模型/实体随处可用的简单案例吗?
提前致谢,莫
【问题讨论】:
-
你能简单地给他们不同的命名空间吗?
-
我不希望将它们放入单独的命名空间中,它也可以在一定程度上避免这个问题,因为代码生成器仍会在 2 个不同的位置为 Tag 表构建类和方法。这意味着我希望在部分 Tag 类中实现的任何自定义方法都必须复制。
-
是的,有了“不想重复自定义方法”的要求,你就不走运了。进入一个单独的 DBML 文件。
-
谢谢大家,我最终还是这样做了!我认为这是一种个人品味,我个人希望我的 LINQ 模型根据任务/行为进行拆分,例如一个 content.dbml 和一个 events.dbml 有一个共同的“标签”类共享,而不必求助于skullduggery。
标签: .net asp.net-mvc