在下面的代码LINQ2SQL:管理的DataContext
public void Foo()
{
CompanyDataContext db = new CompanyDataContext();
Client client = (select c from db.Clients ....).Single();
Bar(client);
}
public void Bar(Client client)
{
CompanyDataContext db = new CompanyDataContext();
db.Client.Attach(client);
client.SomeValue = "foo";
db.SubmitChanges();
}
该好好尝试一下工作,我得到错误味精不起作用。 “试图附加或添加一个不是新的实体,可能是从另一个DataContext加载的,这不被支持。”
你如何在整个应用程序中使用DataContexts,所以你不需要传递一个引用?
什么
会考虑这为未来的LINQ到SQL项目。有关'一些情况'免责声明的进一步信息? – 2011-09-29 06:15:36
+1:这工作,但它看起来对我来说,你只需要`DeferredLoadingEnabled`或`ObjectTrackingEnabled`设置为false,而不是他们两个。我猜延迟加载依赖于对象跟踪。 – 2012-04-09 10:51:47