C# 如何使动态edm模型支持odata查询

C# 如何使动态edm模型支持odata查询,c#,asp.net-web-api,odata,asp.net-web-api2,C#,Asp.net Web Api,Odata,Asp.net Web Api2,我一直在尝试将中的DynamiceModelCreation示例改编成一个可行的v3版本(我想将odata直接加载到excel中,excel还不支持ODataV4) 我在设置中添加了config.AddODataQueryFilter(),并在控制器的get方法上添加了[EnableQuery],但现在我收到了异常: System.Web.Http.OData.dll中发生了类型为“System.Runtime.Serialization.SerializationException”的首次意外

我一直在尝试将中的DynamiceModelCreation示例改编成一个可行的v3版本(我想将odata直接加载到excel中,excel还不支持ODataV4)

我在设置中添加了
config.AddODataQueryFilter()
,并在控制器的get方法上添加了
[EnableQuery]
,但现在我收到了异常:

System.Web.Http.OData.dll中发生了类型为“System.Runtime.Serialization.SerializationException”的首次意外异常

其他信息:无法使用ODataMediaTypeFormatter序列化“EnumerableQuery'1”

这是从


我的控制器的Get方法返回的
EdmEntityObjectCollection
是否存在问题?我原以为,只要添加EnableQuery属性就足以让框架知道如何将该查询操作应用于我返回的
EdmEntityObjectCollection
(它将拥有比潜在需要多得多的数据)

您所做的是正确的,但是OData WebApi现在不支持非类型场景中的查询选项,而且这项功能还有一个开放的空间。

我知道这是一篇老文章,但你有没有找到解决方案?看来这仍然是一个悬而未决的问题。