首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.net rdf dblp数据集查询

.net rdf dblp数据集查询
EN

Stack Overflow用户
提问于 2013-04-04 07:55:14
回答 1查看 342关注 0票数 0

当我运行以下代码以使用此代码片段查询dblp数据集时,我正在使用此端点http://dblp.l3s.de/d2r/snorql enter code hereString st = "";String qry = "";String uri_V;

代码语言:javascript
复制
    uri_V = "http://dblp.l3s.de/d2r/sparql";



    // Modify if need......
    //String ns = "\""+TextBox1.Text.ToString()+"\"";
    // String qry = "SELECT DISTINCT ?name WHERE { ?person foaf:name ?name.FILTER regex(str(?name),"+ns+").}";
    if (radiosrch.SelectedIndex == 0)
    {
        qry = "SELECT ?title WHERE {?game <http://purl.org/dc/terms/subject> <http://dbpedia.org/resource/Category:First-person_shooters> .?game foaf:name ?title .}ORDER by ?title";
    }
    else// if (radiosrch.SelectedIndex == 1) 
    {
        // qry= "query for publisher."
        qry = "SELECT DISTINCT ?Concept WHERE {[] a ?Concept} LIMIT 10";
    }


    //Common
    SparqlRemoteEndpoint endpoint = new SparqlRemoteEndpoint(new Uri(uri_V));
    SparqlResultSet results = endpoint.QueryWithResultSet(qry);
    foreach (SparqlResult result in results)
    {
        Console.WriteLine(result.ToString());
        st = st + result.ToString() + "\n";
    }
    TextBox3.Text = st.ToString();
}
catch (Exception ex)
{
    Label1.Visible = true;
    Label1.Text = ex.ToString();
}

我得到以下错误

VDS.RDF.Query.RdfQueryException:尝试执行SPARQL查询时出现HTTP错误,有关详细信息,请参阅内部异常-> System.Net.WebException:远程服务器返回错误:(400)错误请求。在VDS.RDF.Query.SparqlRemoteEndpoint.ExecuteQuery(Uri目标处的VDS.RDF.Query.SparqlRemoteEndpoint.QueryWithResultSet(ISparqlResultsHandler (),String sparqlQuery,String acceptHeader)在VDS.RDF.Query.SparqlRemoteEndpoint.QueryWithResultSet(ISparqlResultsHandler处理程序,String sparqlQuery) -内部异常堆栈跟踪的结束-在VDS.RDF.Query.SparqlRemoteEndpoint.QueryWithResultSet(ISparqlResultsHandler处理程序处,String sparqlQuery)在VDS.RDF.Query.SparqlRemoteEndpoint.QueryWithResultSet(String sparqlQuery)在Index.ImageButton1_Click(对象发送器,d:\SPARQL\Index.aspx.cs:line 48中的ImageClickEventArgs e)

请尽快帮我解决问题,谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-04 08:02:01

请参阅有关使用dotNetRDF的Debugging HTTP Communications的文档

在您的请求之前设置以下内容:

代码语言:javascript
复制
Options.HttpDebugging = true;

这将使dotNetRDF将有关HTTP请求和响应的调试信息打印到控制台,如果这还不够有启发性,还可以启用以下功能:

代码语言:javascript
复制
Options.HttpFullDebugging = false;

这将把完整的HTTP响应转储到控制台,这样您就可以确切地看到服务器返回的错误消息。

然而,启用后一个选项将导致后续代码失败,并出现不同的错误,因为预期的响应流将不会耗尽,因此,一旦这为您提供了足够的信息来调试您的问题,不要忘记再次关闭它!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15800269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档