Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# “如何修复”;远程服务器返回错误:(404)找不到;如果使用Solr.NET将.NET内核与Solr连接_C#_Asp.net Core_Solr_.net Core_Solrnet - Fatal编程技术网

C# “如何修复”;远程服务器返回错误:(404)找不到;如果使用Solr.NET将.NET内核与Solr连接

C# “如何修复”;远程服务器返回错误:(404)找不到;如果使用Solr.NET将.NET内核与Solr连接,c#,asp.net-core,solr,.net-core,solrnet,C#,Asp.net Core,Solr,.net Core,Solrnet,我想使用solr.NET从正在运行的.NET核心应用程序与正在运行的本地solr实例建立连接。问题是,在尝试查询solr时,我总是遇到404错误 代码如下: 在Startup.cs中,我使用以下命令将实例添加到IServiceCollection: services.AddSolrNet("https://localhost:8982/solr"); 在我的控制器中,我尝试了以下方法: List<AppointmentSearchResult> content =

我想使用solr.NET从正在运行的.NET核心应用程序与正在运行的本地solr实例建立连接。问题是,在尝试查询solr时,我总是遇到404错误

代码如下:

在Startup.cs中,我使用以下命令将实例添加到IServiceCollection:

services.AddSolrNet("https://localhost:8982/solr");
在我的控制器中,我尝试了以下方法:

        List<AppointmentSearchResult> content = new List<AppointmentSearchResult>();
        SolrQueryResults<AppointmentSearchResult> results = _solr.Query(new SolrQueryByField("locked", "true"));
        foreach (AppointmentSearchResult result in results)
        {
            content.Add(result);
        }

        string json = JsonConvert.SerializeObject(content);

        return this.Content(json);
这样做对吗?我总是收到错误:处理请求时发生未处理的异常。WebException:远程服务器返回错误:(404)未找到

如果有人能给我一些建议,那就太好了


最好的问候,Andreas

solr连接需要用户名和密码吗?试试这个

services.AddSolrNet(o =>
            {
                o.ServerUrl = "https://localhost:8982/solr";
                o.UserName = "sa";
                o.Password = "sa";
            });

solr连接是否需要用户名和密码?试试这个

services.AddSolrNet(o =>
            {
                o.ServerUrl = "https://localhost:8982/solr";
                o.UserName = "sa";
                o.Password = "sa";
            });

SolrNet v1.0.17的文档显示了两个IServiceCollection添加项,一个用于一般solr实例(如您所做),另一个用于指定文档类型的特定核心。例如

services.AddSolrNet(“https://localhost:8982/solr");
services.AddSolrNet


我在Startup.cs中就是这样做的,没有遇到像您遇到的问题。

SolrNet v1.0.17的文档显示了两个IServiceCollection添加项,一个用于一般solr实例(如您所做),另一个用于指定文档类型的特定core。例如

services.AddSolrNet(“https://localhost:8982/solr");
services.AddSolrNet


我在Startup.cs中就是这样做的,没有遇到像您遇到的那样的问题。

您使用的是与本地主机的实际https连接吗?那是您的Solr主机还是另一个httpd?URL在您的浏览器中有效吗?Solr的服务器日志是否显示发生的任何请求?它在命令行中与curl或wget一起工作吗?是的,我安装了本地ssl证书,并且可以在浏览器中访问Solr,而无需任何证书问题。通过从命令行到*:*&version=2.2&start=0&rows=10&indent=on的普通请求,我可以从solr获取数据,但不能使用solr.net根据URL应该包含核心/集合名称的源
solr核心的url。
。试试
https://localhost:8982/solr/Appointments
。并查看Solr日志以查看实际发出的请求。您是否使用到本地主机的实际https连接?那是您的Solr主机还是另一个httpd?URL在您的浏览器中有效吗?Solr的服务器日志是否显示发生的任何请求?它在命令行中与curl或wget一起工作吗?是的,我安装了本地ssl证书,并且可以在浏览器中访问Solr,而无需任何证书问题。通过从命令行到*:*&version=2.2&start=0&rows=10&indent=on的普通请求,我可以从solr获取数据,但不能使用solr.net根据URL应该包含核心/集合名称的源
solr核心的url。
。试试
https://localhost:8982/solr/Appointments
。并查看Solr日志以查看实际发出的请求。我可以使用“”在浏览器中访问Solr,而无需任何凭据。我可以使用“”在浏览器中访问Solr,而无需任何凭据