如何将参数传递给 SPARQL 查询
How to pass parameters into a SPARQL query
如何将 var1 和 var2 传递到如下所示的 sparql 查询中。我有下面的代码,但它没有返回任何东西。
非常感谢您对此提供的帮助。谢谢你在adavnce
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].
}";
将问题分成两部分解决:
- 检查您的 SPARQL 查询是否正确。当您将正确的值直接放在查询文本中时,请确保它工作正常。就像@scotthenninger 所说的那样,您的查询似乎无效。
- 将参数传递到 SPARQL 查询中(参见 DotNetRDF API docs)。使用的方法取决于它是 URI (
.SetUri()
) 还是文本值。在参数化的 SPARQL 字符串上使用 .ToString()
方法来检查变量值插入字符串后的样子。
如何将 var1 和 var2 传递到如下所示的 sparql 查询中。我有下面的代码,但它没有返回任何东西。
非常感谢您对此提供的帮助。谢谢你在adavnce
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].
}";
将问题分成两部分解决:
- 检查您的 SPARQL 查询是否正确。当您将正确的值直接放在查询文本中时,请确保它工作正常。就像@scotthenninger 所说的那样,您的查询似乎无效。
- 将参数传递到 SPARQL 查询中(参见 DotNetRDF API docs)。使用的方法取决于它是 URI (
.SetUri()
) 还是文本值。在参数化的 SPARQL 字符串上使用.ToString()
方法来检查变量值插入字符串后的样子。