C# Linq到SQL-更改可以在不同的DataContext实例上持久化吗

C# Linq到SQL-更改可以在不同的DataContext实例上持久化吗,c#,linq-to-sql,C#,Linq To Sql,如果我在一个使用DataContext实例的方法中使用Linq to SQL从数据库检索一个对象(该方法在该方法退出时关闭),我可以在另一个方法中使用另一个DataContext编辑该对象,并使更改在数据库中生效吗 i、 你喜欢下面的工作吗 public void Foo() { using (var db = new DataContext()) { Bar a = this.GetBar(); if (a != null) { a.Property

如果我在一个使用DataContext实例的方法中使用Linq to SQL从数据库检索一个对象(该方法在该方法退出时关闭),我可以在另一个方法中使用另一个DataContext编辑该对象,并使更改在数据库中生效吗

i、 你喜欢下面的工作吗

public void Foo()
{
  using (var db = new DataContext())
  {
    Bar a = this.GetBar();
    if (a != null)
    {
      a.Property1 = true;
      db.SubmitChanges();
    }
  }
}

private Bar GetBar(string val)
{
  using (var db = new DataContext())
  {
    return db.FirstOrDefault(x => x.Property2 == val); 
  }
}

应该有某种方法

比如:

public void Foo()
{
  using (var db = new DataContext())
  {
    Bar a = this.GetBar();
    if (a != null)
    {
      db.Bars.Attach(a);
      a.Property1 = true;
      db.SubmitChanges();
    }
  }
}

应该有某种方法

比如:

public void Foo()
{
  using (var db = new DataContext())
  {
    Bar a = this.GetBar();
    if (a != null)
    {
      db.Bars.Attach(a);
      a.Property1 = true;
      db.SubmitChanges();
    }
  }
}

@JordyDieltjens可能在两个不同的数据库中重复,而我问的是同一个数据库,只是DataContext的不同实例可能在两个不同的数据库中重复@JordyDieltjens,而我问的是同一个数据库,只是DataContext的不同实例