Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linq to sql 保存对不属于当前数据库上下文的对象的更改_Linq To Sql - Fatal编程技术网

Linq to sql 保存对不属于当前数据库上下文的对象的更改

Linq to sql 保存对不属于当前数据库上下文的对象的更改,linq-to-sql,Linq To Sql,我有一个web服务来获取对象,例如 public Blah GetBlah(int blahID) { var db = new BlahContext... } 和另一个web服务 public UpdateBlah(int blahID) { var db = new BlahContext... var blah = GetBLah(blahID); blah.someVariable = false; ... // how do I save th

我有一个web服务来获取对象,例如

public Blah GetBlah(int blahID) {
   var db = new BlahContext...
}
和另一个web服务

public UpdateBlah(int blahID) {
    var db = new BlahContext...
    var blah = GetBLah(blahID);
    blah.someVariable = false;
    ... // how do I save this object?
}
但我不认为我可以进行提交更改,因为对象不是在同一上下文中创建的。

当调用UpdateBlah时,需要将对象作为参数传递,以便可以更新数据

然后,您可以选择两个备选方案:

1.手动或自动绘图 2.贴上 可以将对象附加到新的datacontext

public UpdateBlah(object blahUpdated) {
    var db = new BlahContext...
    db.blahs.Attach(blahUpdated);
    db.SubmitChanges()
}
public UpdateBlah(object blahUpdated) {
    var db = new BlahContext...
    db.blahs.Attach(blahUpdated);
    db.SubmitChanges()
}