【发布时间】:2012-03-20 13:33:52
【问题描述】:
在我以前使用 linq-to-sql 的应用程序中,我总是使用一个类来放入我的 linq-to-sql 代码,所以我只有一个 DataContext。
我当前的应用程序变得太大,我开始将我的代码分成不同的类(一个用于客户,一个用于位置,一个用于供应商......)并且它们都有自己的 DataContext DatabaseDesignDataContext dc = new DatabaseDesignDataContext();
现在,当我尝试使用某个位置(我从不同的 DataContext 获得)保存联系人时,我收到以下错误:
“已尝试附加或添加一个不是新的实体,可能是从另一个 DataContext 加载的。不支持。”
我认为这是因为我为每个班级创建了一个DataContext,但我不知道如何以不同的方式做到这一点?
我正在寻找任何想法,谢谢。
我的课程如下所示:
public class LocatieManagement
{
private static DatabaseDesignDataContext dc = new DatabaseDesignDataContext();
public static void addLocatie(locatie nieuweLocatie)
{
dc.locaties.InsertOnSubmit(nieuweLocatie);
dc.SubmitChanges();
}
public static IEnumerable<locatie> getLocaties()
{
var query = (from l in dc.locaties
select l);
IEnumerable<locatie> locaties = query;
return locaties;
}
public static locatie getLocatie(int locatie_id)
{
var query = (from l in dc.locaties
where l.locatie_id == locatie_id
select l).Single();
locatie locatie = query;
return locatie;
}
}
【问题讨论】:
标签: c# winforms linq-to-sql datacontext