LINQ to Entities / SQL - 查看附加到对象上下文的内容的方法?

时间:2009-11-05 23:47:13

标签: c# linq-to-entities

有点奇怪的问题,但有没有办法看到哪些对象附加到我的对象上下文。我遇到了一些随机问题,如果我能通过“SaveChanges”看到附加的内容并且尚未保存,那么解决这些问题真的很有帮助。

答案(实体框架):context.ObjectStateManager.GetObjectStateEntries(EntityState.Added | EntityState.Modified | EntityState.Unchanged).Select(o => o.Entity).OfType<YourObjectType>();

3 个答案:

答案 0 :(得分:1)

我认为this article可能会引起人们的兴趣。

它涵盖了使用反射来查看DataContext中的内部(私有)字段以查找已更改的项目。我相信它可以适应所有项目,而不仅仅是改变项目。

答案 1 :(得分:1)

也许我误解(或过度简化)你的问题,但听起来像GetChangeSet()可以帮到你?

答案 2 :(得分:0)

您查看ObjectStateManager中的对象状态条目。 This article有一个例子。