目前,我尝试使用实体框架作为ORM的数据访问层的 Statement 2 方法。但是,它在某些情况下会抛出异常。
值不能为空。参数名称:source
然后在相同条件下,我通过 Statement 1 方法恢复我的代码,它会毫无例外地返回预期结果。
你能帮我解释一下发生了什么吗?我想使用 Statement 2 方法,因为我可以将映射重用于其他方法。
我非常感谢你帮助解决我的问题。
声明1:
var entities = _entityRepository.Where(...).Select(x=> new EntityDTO {...});
声明2:
Func<Entity, EntityDTO> Selector = x => new EntityDTO {...};
var entities = _entityRepository.Where(...).Select(Selector );