如何将参数传递给SPARQL查询

时间:2016-03-05 00:00:03

标签: c# sparql dotnetrdf

如何将var1和var2传递给下面显示的sparql查询。我有下面的代码,但它没有返回任何东西。

感谢您对此的帮助。谢谢你

string var1, var2;
var1 = DropDownList1.SelectedValue.ToString();
var2 = DropDownList2.SelectedValue.ToString();
//Load first listbox
private const string loadlist1 = @"
                     PREFIX au: <http://semwebowl.somee.com/au/n3_notation#>
                                    SELECT DISTINCT ?ResearchArea 

                                    WHERE {
                                        [a  au:var1;
                                            au:ResearchArea var2;
                                            au:ResearchArea ?ResearchArea].
                                            }";

1 个答案:

答案 0 :(得分:3)

通过将问题分成两部分来解决问题:

  1. 检查您的SPARQL查询是否正确。将正确的值直接放在查询文本中时,请确保它正常工作。与@scotthenninger一样,您的查询似乎无效。
  2. 将参数传递到SPARQL查询中(请参阅DotNetRDF API docs)。使用的方法取决于它是URI(.SetUri())还是文本值。在参数化SPARQL字符串上使用.ToString()方法,检查将变量值插入字符串后的样子。