针对DTO的OData查询,针对EF执行

时间:2017-11-15 10:19:01

标签: c# entity-framework odata

在我正在进行的项目中,我们希望使用OData从前端查询我们的数据。 问题是前端ODataControllers暴露了项目的DTO,它构建了针对DTO的查询而不是EntityFramework中的实体。

AutoMapper将数据映射到DTO和实体之间。

有没有办法让OData控制器映射查询,以便它们查询EF实体而不是DTO?

1 个答案:

答案 0 :(得分:1)

AutoMapper IQueryable extension旨在实现此结果:将DTO / POCO上的OData查询映射到实体上的EF查询。

例如:

  

在某些情况下,例如OData,通过一个返回泛型DTO   IQueryable控制器动作。没有明确的指示,   AutoMapper将扩展结果中的所有成员。控制哪个   成员在投影期间展开,在中设置ExplicitExpansion   配置然后传入您想要显式的成员   扩展

你可以尝试一下。