这是EF 7(现在是Core)。我有一个名为CreatedBy的影子属性。 EF正确地从数据存储装载它的值,只要我使用相同的DbContext实例,该属性的值仍可访问,但我需要以分离方式工作,并稍后使用另一个DbContext实例提交更改。实体框架问题7影子属性
问题是,对于后续的DbContexts,所有阴影属性都是NULL,到目前为止我还是看不到它来加载它。所以在摆脱这个阴影之前,我需要知道是否有人已经找到了解决这个问题的解决方案。
如果它可以帮助,这里是如何与这里出发:
var cached = Cache.Get<MyType>();
cached.Default = false; //some updating
var dbContext = new MyContext();
dbContext.Attach(cached);
dbContext.Entry(cached).State = EntityState.Modified;
dbContext.SaveChanges();
的SaveChanges为阴影属性提交NULL值。
看起来像影子属性迫使你从数据库中获取实体,并用断开客户端的数据“重新绘制状态”。 –
@GertArnold似乎是这样的,AFAIK这个特性是为了映射和抽象RowVersion,CreatedBy,CreatedDate等列的实体而创建的。这种行为使得imho变得无用。 –
我同意你的意见。当我第一次听到它时,我想知道:我们是否要求这个?什么是商业价值?该功能的状态是令人失望的。 –