如何让动态edm模型支持odata查询
How to make dynamic edm model support odata queries
我一直在尝试将 https://github.com/OData/ODataSamples/tree/master/WebApi/v4/DynamicEdmModelCreation 中的 DynamicEdmModelCreation 示例改编成可用的 v3 版本(我想将 odata 直接加载到 excel,它还不支持 odata v4)
我在设置中添加了 config.AddODataQueryFilter()
并在控制器的 get 方法中添加了 [EnableQuery]
,但我现在收到异常:
A first chance exception of type 'System.Runtime.Serialization.SerializationException' occurred in System.Web.Http.OData.dll
Additional information: 'EnumerableQuery`1' cannot be serialized using the ODataMediaTypeFormatter.
抛出的
我的 Controller 的 Get 方法返回 EdmEntityObjectCollection
是个问题吗?我原以为只需添加 EnableQuery 属性就足以让框架知道如何将该查询操作应用于我返回的 EdmEntityObjectCollection
(这将包含比潜在需要更多的数据)
你做的是对的,但是OData WebApi现在不支持un-typed场景下的query options,关于这个特性有一个openissue
我一直在尝试将 https://github.com/OData/ODataSamples/tree/master/WebApi/v4/DynamicEdmModelCreation 中的 DynamicEdmModelCreation 示例改编成可用的 v3 版本(我想将 odata 直接加载到 excel,它还不支持 odata v4)
我在设置中添加了 config.AddODataQueryFilter()
并在控制器的 get 方法中添加了 [EnableQuery]
,但我现在收到异常:
抛出的A first chance exception of type 'System.Runtime.Serialization.SerializationException' occurred in System.Web.Http.OData.dll
Additional information: 'EnumerableQuery`1' cannot be serialized using the ODataMediaTypeFormatter.
我的 Controller 的 Get 方法返回 EdmEntityObjectCollection
是个问题吗?我原以为只需添加 EnableQuery 属性就足以让框架知道如何将该查询操作应用于我返回的 EdmEntityObjectCollection
(这将包含比潜在需要更多的数据)
你做的是对的,但是OData WebApi现在不支持un-typed场景下的query options,关于这个特性有一个openissue