我们的应用程序中的用户可以添加,删除和修改对象图。
我正在使用Cocktail的UnitOfWork来收集已更改的实体并启动" BusinessProcess"检查对象图中的某些命令。
让我们说,我想检查,如果用户在Person.Department中添加了一个条目,其中Department是Person的RelatedEntityList。
用户在Person.Department上添加了部门,我正在使用Linq检查天气是否有一个特殊的部门"管理员"。
我的Linq查询看起来像这样。
var adminDepartement = person.Departement.Where(x => x.Name.Equals(" Administrator"))。FirstOrDefault();
如果部门已经存在,此查询效果很好。 但是当用户刚刚在此会话中添加了部分时,我从RelatedEntityList中获得了一个空值。
是否有任何技巧可以通过Linq搜索新添加的内容?
或者我是否必须直接使用EntityManager?
在第二次保存时,Linq查询正确返回adminDepartement,但我需要在用户保存之前进行此验证。
答案 0 :(得分:1)
我发现了我的问题。我在EntityId上查询Person.Department.Id在创建实体时为0,在提交完成时设置为数据库级别。
我现在使用Person.DepartementId查询现有的entrys。