C# 将LINQ语句转换为常用的数据服务URL

C# 将LINQ语句转换为常用的数据服务URL,c#,wcf,linq,url,C#,Wcf,Linq,Url,我想将一个简单的LINQ语句转换成一个url,以便在Web服务器上手动生成输出。所以我想得到这样的东西 http://localhost:6627/WebSite15/NorthwindDataService.svc/Products?$orderby=ProductName 执行以下语句时: Products.Orderby(x => x.ProductName); 这可能吗?我的意思是,一个简单的数据服务可以开箱即用,但我不想使用这个东西,因为我有特殊的要求。我有一个非常类似的问题

我想将一个简单的LINQ语句转换成一个url,以便在Web服务器上手动生成输出。所以我想得到这样的东西

http://localhost:6627/WebSite15/NorthwindDataService.svc/Products?$orderby=ProductName
执行以下语句时:

Products.Orderby(x => x.ProductName);

这可能吗?我的意思是,一个简单的数据服务可以开箱即用,但我不想使用这个东西,因为我有特殊的要求。

我有一个非常类似的问题,我发现了这个问题,它工作得非常好。。。您也可以看到类似的实现(查看投票率较高的答案,而不是标记的答案)

它会让你做这样的事情:

IEntitySorter<Person> sorter = EntitySorter<Person>
    .OrderBy("Address.City")
    .ThenByDescending("Id");
EntitySorter分拣机=EntitySorter分拣机
.OrderBy(“地址.城市”)
。然后是“身份证”;

编辑:另一方面,我有一个完全合理的理由使用它(事实上,我是在模拟服务层中使用它的,所以我不关心性能),但值得注意的是EntitySorter必须“绕过你的a$$到达你的肘部”才能让软搜索工作。。。我认为这是微软试图说“我们不是故意让这件事变得容易的”。。。也就是说,考虑到EntitySorter的功能,我认为EntitySorter是一个非常优雅的解决方案:)

我现在通过ExpressionVisitor实现了这一点。工作起来很有魅力。

Hm.我看不出有什么地方可以将其转换为上面的url。EntitySorter可以让您从字符串中进行lamda排序。。。您只需搜索Request.QueryString即可获得OrderBy值。这不是我的意思。我的意思是把上面的命令翻译成url。