c# – OData $orderby查询中的自然排序
发布时间:2020-12-15 22:44:05 所属栏目:百科 来源:网络整理
导读:我在ASP.NET API 2控制器中使用[EnableQuery](System.Web.Http.OData)来启用OData v3过滤/排序/分页.我注意到使用$orderby子句返回按如下方式排序的数据(这里有一些例子 – 它们是字符串,不一定有模式): LoadTest1000_1LoadTest1000_10LoadTest1000_1000Loa
我在ASP.NET API 2控制器中使用[EnableQuery](System.Web.Http.OData)来启用OData v3过滤/排序/分页.我注意到使用$orderby子句返回按如下方式排序的数据(这里有一些例子 – 它们是字符串,不一定有模式):
LoadTest1000_1 LoadTest1000_10 LoadTest1000_1000 LoadTest1000_2 LoadTest1000_20 [etc] 当我需要自然分类时: LoadTest1000_1 LoadTest1000_2 LoadTest1000_10 LoadTest1000_20 LoadTest1000_1000 LoadTest1000_2000 [etc] 我该如何启用这种排序?是否有任何扩展点可用于提供我自己的排序逻辑? 解决方法
我不认为有一个很好的方法来做到这一点. SQL Server首先没有对自然排序的内置支持.
也就是说,您可以使用自定义oData函数/动作.对于v3,请查看https://docs.microsoft.com/en-us/aspnet/web-api/overview/odata-support-in-aspnet-web-api/odata-v3/odata-actions 否则,对于v4 https://docs.microsoft.com/en-us/aspnet/web-api/overview/odata-support-in-aspnet-web-api/odata-v4/odata-actions-and-functions 无论你是随机互联网陌生人,我祝你成功! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |