0

WebApiを使用していて、SolrNetリソースの1つにODataを実装したいと考えています。

WebApiは、IQueryableを返す場合にODataをサポートします。したがって、SolrNetクエリ用のIQueryableプロバイダーが必要です。

誰かが私が始める方法の何か、またはいくつかのサンプルコードを知っていますか?利用可能なものがない場合、私の会社はこれを作成するためのオープンソースプロジェクトを開始する可能性があります。

4

3 に答える 3

1

質問は非常に古いものですが、5年後に誰かがそれを必要とする場合に備えて、LinqからSolrIQueriableへの実装を次に示します。

Gitハブプロジェクト

https://github.com/DanielLavrushin/LinqToSolr/

Nugetパッケージ

https://www.nuget.org/packages/LinqToSolr/

于 2017-05-08T20:56:19.017 に答える
0

一般的に、IQueryableはある種のLINQプロバイダーに関連付けられています。LINQ-to-Solrプロバイダーのコミュニティがどこにあるのかわかりません。今日機能するものは何もわかりませんが、検索結果に表示されたプロジェクトの中には、LINQプロバイダーの作成に時間を費やす前に確認する必要があるものがあります。

そうは言っても、単にリストを取得して.AsQueryable()拡張メソッドを呼び出すことができます。この方法でIQueryableを取得することは技術的には簡単ですが、おそらくODataクエリをSolrクエリに変換することを探していると思います。その場合、前の段落が追求したい段落です。

于 2012-08-11T07:00:40.010 に答える
0

https://www.nuget.org/packages/SolrNet.Linqnugetパッケージを使用できます。SolrNet機能を拡張し、LINQ式を構築するODataの方法と互換性がありますが、サポートするメソッドの数は限られています。

コードサンプルは次のようになります。

var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Product>>();
IQueryable<Product> solrLinq = solr.AsQuerable()
Product[] result = solrLinq.Where(p => p.Price > 12).ToArray();
于 2018-08-03T18:06:24.947 に答える