Odata 我在哪里可以找到SolrNet IQueryable提供商?

Odata 我在哪里可以找到SolrNet IQueryable提供商?,odata,iqueryable,solrnet,Odata,Iqueryable,Solrnet,我正在使用WebApi,希望为我的SolrNet资源之一实现OData 如果您将OData返回IQueryable,则WebApi支持OData。因此,我需要一个IQueryable提供程序用于SolrNet查询 有人知道我如何开始的任何代码或示例代码吗?如果没有可用的,我的公司可能会启动一个开源项目来创建它。一般来说,IQueryable与某种LINQ提供商相关联。我不确定社区在LINQ到Solr提供商方面处于什么位置。我不知道今天有什么有用的东西,但是一些项目出现在搜索结果中,您应该在投入时

我正在使用WebApi,希望为我的SolrNet资源之一实现OData

如果您将OData返回IQueryable,则WebApi支持OData。因此,我需要一个IQueryable提供程序用于SolrNet查询


有人知道我如何开始的任何代码或示例代码吗?如果没有可用的,我的公司可能会启动一个开源项目来创建它。

一般来说,IQueryable与某种LINQ提供商相关联。我不确定社区在LINQ到Solr提供商方面处于什么位置。我不知道今天有什么有用的东西,但是一些项目出现在搜索结果中,您应该在投入时间创建LINQ提供者之前查看这些项目


也就是说,您可以简单地获取一个事物列表并调用.AsQueryable()扩展方法。虽然通过这种方式获得IQueryable在技术上很容易,但我假设您可能正在寻找将OData查询转换为Solr查询的方法,在这种情况下,前一段就是您想要追求的内容。

我知道,这个问题很老,但为了以防万一,如果有人在5年后需要它,下面是我对Linq to Solr iquerable的实现

Git枢纽项目

Nuget套餐

您可以使用nuget包。它扩展了SolrNet的功能,并与OData构建LINQ表达式的方式兼容,但支持的方法数量有限

代码示例为:

var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Product>>();
IQueryable<Product> solrLinq = solr.AsQuerable()
Product[] result = solrLinq.Where(p => p.Price > 12).ToArray();
var solr=ServiceLocator.Current.GetInstance();
IQueryable solrLinq=solr.AsQuerable()
Product[]result=solrLinq.Where(p=>p.Price>12.ToArray();

我一直在寻找,但找不到任何项目。这是这篇文章的真正目的,是看看是否有人有任何建议。