3

単純なLINQステートメントをWebサーバーで使用して出力を手動で生成できるURLに変換したいと思います。だから私はこのようなものを手に入れたい

http://localhost:6627/WebSite15/NorthwindDataService.svc/Products?$orderby=ProductName

次のようなステートメントを実行する場合:

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

これは可能ですか?つまり、単純なデータサービスがそれをすぐに実行しますが、特別な要件があるため、これを使用したくありません。

4

2 に答える 2

2

私は非常によく似た問題を抱えていて、このEntitySorterを見つけましたが、それは素晴らしく機能しました...ここでも同様の実装を見ることができます(マークされた回答ではなく、より高い投票の回答を見てください)。

それはあなたにこの種のことをさせます:

IEntitySorter<Person> sorter = EntitySorter<Person>
    .OrderBy("Address.City")
    .ThenByDescending("Id");

編集:ちなみに、私はそれを使用する完全に正当な理由がありました(実際、モックされたサービスレイヤーで使用していたので、パフォーマンスについては心配していませんでした)が、EntitySorterが「回る」必要があることは注目に値しますソフト検索を機能させるために「あなたのひじにたどり着くための$$」...「意図的にこれを簡単にしたわけではない」と言ったのはMicrosoftの試みだったと思います...そうは言っても、EntitySorterは非常にエレガントだと思いましたそれが何をしているのかを考慮した解決策:)

于 2012-12-28T16:57:40.523 に答える
0

私は今、ExpressionVisitorでそれを実現しました。チャームのように機能します。

于 2012-12-28T21:52:24.157 に答える