【发布时间】:2010-11-10 18:25:51
【问题描述】:
我一直在从事一个使用LinqToSQL 的项目,该项目涉及很多表格。所有这些都映射在一个.dbml 文件中(即只有一个DataContext)。我这样做的借口是(当前)您不能跨多个数据上下文加入。比如……
DB1DataContext db1 = new DB1DataContext();
DB2DataContext db2 = new DB2DataContext();
var query =
from x in db1.SomeTable
join y in db2.AnotherTable on x.Id equals y.Id
select new
{
x.Column,
y.Column
};
有人认为事实并非如此,我应该将.dbml 文件分解为单独的更小(即更多可管理的)数据上下文。我现在刚刚设置了一个示例,运行与上述类似的查询并得到以下错误...
base {System.SystemException} = {" 查询包含对项目的引用 在不同的数据上下文中定义。"}
我很好奇,我错过了什么吗?有很多表需要映射的常见做法是什么?如何分解 .dbml 文件?
【问题讨论】:
标签: c# linq-to-sql datacontext