使用select将Entity Framework实体映射到dto对象

dagda1

我正在使用Entity Framework,并且尝试使用以下代码将使用实体的对象映射到dto对象,但是出了点问题:

var fileUploads = _dbContext.FileUploads.Include("DocumentType").Include("Store");

if (jobSearchParams.DocumentTypeId != null)
{
    fileUploads = fileUploads.Where(x => x.DocumentTypeID == 6);
}

if (jobSearchParams.StoreId != null)
{
    fileUploads = fileUploads.Where(x => x.StoreID == jobSearchParams.StoreId);
}

if (!string.IsNullOrEmpty(jobSearchParams.Name))
{
    fileUploads = fileUploads.Where(d => d.Name.Contains(jobSearchParams.Name));
}

var dtos = Mapper.Map<IEnumerable<JobDocumentDto>>(documents);

var cnt = fileUploads.Count(); // 1412

var fileDocuments = fileUploads.AsEnumerable().Select(d => new JobDocumentDto
{
    DocumentID = d.ID,
    StoreID = d.StoreID,
    StoreName = d.Store.Name,
    Document = Mapper.Map<DocumentDto>(d),
    DocumentName = d.Name
}).ToList();

cnt  = fileDocuments.Count; // 0

使用AsEnumerable表达式中的进行选择后,我有0个对象,如果删除,则会AsEnumerable出现以下错误:

System.NotSupportedException:LINQ to Entities无法识别方法'DataManagement.DTOs.DocumentDto MapDocumentDto'方法,并且该方法无法转换为商店表达式

彼得·B

.ToList()在选择之前添加,因此使其成为.ToList().Select(...)...

原因:LINQ试图将整个new JobDocumentDto {...}语句转换为查询形式,但是不能。通过更早运行查询,可以避免此问题。

另外,AsEnumerable()现在可能是多余的,只需尝试将其删除即可。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将查询表达式从DTO映射到实体对象

来自分类Dev

当DTO中缺少某些属性时,如何将DTO对象映射到实体?

来自分类Dev

将LLBLGen实体映射到DTO

来自分类Dev

将dto映射到复杂实体

来自分类Dev

将dto映射到复杂实体

来自分类Dev

使用AutoMapper从实体映射到DTO或从DTO映射到实体时出错

来自分类Dev

使用MapStruct的DI将实体映射到DTO

来自分类Dev

将JSON对象映射到Hibernate实体

来自分类Dev

将 viewModel 对象映射到 ICollection 实体

来自分类Dev

将一个DTO映射到多个实体

来自分类Dev

将 DTO 映射到 EF 实体时处理关系

来自分类Dev

使用Linq Select将实体映射到DTO的最简洁方法?

来自分类Dev

使用AutoMapper将数据表映射到对象(DTO)

来自分类Dev

使用 Jackson Object Mapper 将 Map 映射到 DTO 对象

来自分类Dev

使用自动映射器将复杂的DTO映射到实体

来自分类Dev

使用 Orika 将实体层次结构映射到 DTO 层次结构

来自分类Dev

将SQLquery映射到普通对象,而不是实体

来自分类Dev

如何在Entity Framework 7中将实体映射到表?

来自分类Dev

如何将针对DTO的OData查询映射到另一个实体?

来自分类Dev

如何将父类 DTO 映射到父类实体

来自分类Dev

使用 mapstruct 从 DTO 映射到实体时,为什么我没有得到 id?

来自分类Dev

我们如何使用 java 将复杂的 NativeQuery 结果映射到 DTO 对象

来自分类Dev

如何将DTO中的对象ID映射到数据库中的现有对象?

来自分类Dev

使用部分类扩展Entity Framework 5实体并将其映射到现有的其他实体

来自分类Dev

使用部分类扩展Entity Framework 5实体并将其映射到现有的其他实体

来自分类Dev

将JPA或Hibernate投影查询映射到DTO(数据传输对象)

来自分类Dev

如何将GeoPoint从Firebase-Firestore映射到Android中的Kotlin DTO对象

来自分类Dev

无法将Dto映射到ViewModel

来自分类Dev

JAXB将XML元素映射到DTO

Related 相关文章

  1. 1

    将查询表达式从DTO映射到实体对象

  2. 2

    当DTO中缺少某些属性时,如何将DTO对象映射到实体?

  3. 3

    将LLBLGen实体映射到DTO

  4. 4

    将dto映射到复杂实体

  5. 5

    将dto映射到复杂实体

  6. 6

    使用AutoMapper从实体映射到DTO或从DTO映射到实体时出错

  7. 7

    使用MapStruct的DI将实体映射到DTO

  8. 8

    将JSON对象映射到Hibernate实体

  9. 9

    将 viewModel 对象映射到 ICollection 实体

  10. 10

    将一个DTO映射到多个实体

  11. 11

    将 DTO 映射到 EF 实体时处理关系

  12. 12

    使用Linq Select将实体映射到DTO的最简洁方法?

  13. 13

    使用AutoMapper将数据表映射到对象(DTO)

  14. 14

    使用 Jackson Object Mapper 将 Map 映射到 DTO 对象

  15. 15

    使用自动映射器将复杂的DTO映射到实体

  16. 16

    使用 Orika 将实体层次结构映射到 DTO 层次结构

  17. 17

    将SQLquery映射到普通对象,而不是实体

  18. 18

    如何在Entity Framework 7中将实体映射到表?

  19. 19

    如何将针对DTO的OData查询映射到另一个实体?

  20. 20

    如何将父类 DTO 映射到父类实体

  21. 21

    使用 mapstruct 从 DTO 映射到实体时,为什么我没有得到 id?

  22. 22

    我们如何使用 java 将复杂的 NativeQuery 结果映射到 DTO 对象

  23. 23

    如何将DTO中的对象ID映射到数据库中的现有对象?

  24. 24

    使用部分类扩展Entity Framework 5实体并将其映射到现有的其他实体

  25. 25

    使用部分类扩展Entity Framework 5实体并将其映射到现有的其他实体

  26. 26

    将JPA或Hibernate投影查询映射到DTO(数据传输对象)

  27. 27

    如何将GeoPoint从Firebase-Firestore映射到Android中的Kotlin DTO对象

  28. 28

    无法将Dto映射到ViewModel

  29. 29

    JAXB将XML元素映射到DTO

热门标签

归档