Dim*_*ima 5 .net c# entity-framework dto automapper
这是Automapper专业人士的问题.我已经尝试了几天的查询映射 - 并且没有运气.似乎Automapper并不打算以我想要的方式使用它.但也许我错了.所以这是问题......
我有这样的课程:
我想在我的数据访问层中编写一个通用的读取函数,如下所示:
IEnumerable<CatDto> Read(IQueryable<CatDto> query) {
// here "query" is converted
// to Entity Framework query by means of AutoMapper,
// EF query gets executed,
// I convert EF entities (Cat) back to CatDto - this is not essential
// result is returned
}
Run Code Online (Sandbox Code Playgroud)
我将以不同的方式调用此函数.例:
var q = new ObjectModel.Collection(Of CatDto)).AsQueryable();
q = q.Where(c => c.Toys.Count() > 1);
var someResultVar = Read(q);
Run Code Online (Sandbox Code Playgroud)
到目前为止,任何实现此类行为的尝试都失败了.我想知道Automapper是否是这里的帮手还是我完全错了?
小智 3
我相信您想要的功能在UseAsDataSource中
您无法映射 IQueryable,但您不需要使用 UseAsDataSource 示例
IQueryable<CatDto> someResultVar = new ObjectModel.Collection(Of CatDto)).AsQueryable().UseAsDataSource().For(Of OrderLineDTO).Where(c => c.Toys.Count() > 1);
Run Code Online (Sandbox Code Playgroud)
当您枚举时,它将把 Lambda 从 CatDto 转换为 CatEf 并调用ProjectTo<CatDto>并返回 CatDto 对象
| 归档时间: |
|
| 查看次数: |
3277 次 |
| 最近记录: |