Linq to Sql:DataContext实例是否可以返回包含挂起更改的集合?

时间:2009-08-11 15:32:58

标签: linq-to-sql

考虑以下代码块:

using (PlayersDataContext context = new PlayersDataContext())
{
    Console.WriteLine(context.Players.Count()); // will output 'x'
    context.Players.InsertOnSubmit(new Player {FirstName = "Vince", LastName = "Young"});
    Console.WriteLine(context.Players.Count()); // will also output 'x'; but I'd like to output 'x' + 1
}

鉴于我没有打电话

context.SubmitChanges();

应用程序将在InsertOnSubmit语句之前和之后输出相同的播放器计数。

我的两个问题:

  

DataContext实例可以返回包含挂起更改的集合吗?

     

或者我必须将DataContext实例与context.GetChangeSet()进行协调吗?

1 个答案:

答案 0 :(得分:4)

当然,请使用:

context.GetChangeSet()

并且为了更精细,还有插入,更新和删除的成员。

编辑:我现在理解你的新问题了。是的,如果您想在集合中包含更改,则必须以某种方式组合GetChangeSet()和现有集合返回的集合。