如何迭代从 QueryHelpers.ParseQuery 获得的 Dictionary<string, StringValues> 集合?
How do I iterate over a Dictionary<string, StringValues> collection obtained from QueryHelpers.ParseQuery?
当我打电话时
QueryHelpers.ParseQuery(uri.Query);
它returns
Dictionary<string, StringValues>
当我在 Visual Studio“本地”window 中查看此集合时,我看到如下内容:
Count = 4
{[q, {qOne, qTwo}]}
"q"
{qOne, qTwo}
{[selection, {sOne, sTwo}]}
"selection"
{sOne, sTwo}
{[color, {cOne, cTWo}]}
"color"
{cOne, cTwo}
{[option, {oOne, oTwo}]}
"option"
{oOne, oTwo}
如果我查看 Microsoft documentation 的 StringValues
,它说:
GetEnumerator() - Retrieves an object that can iterate through the individual strings in this StringValues.
这告诉我我应该能够做这样的事情:
Dictionary<string, StringValues> queryString = QueryHelpers.ParseQuery(uri.Query);
foreach(string key in queryString.Keys){
Console.WriteLine("KEY: " + key);
foreach(string value in queryString.Value[key].GetEnumerator()){
Console.WriteLine("VALUE: " + value);
}
}
但是没有任何选项 queryString.Value[key]
我需要这样做。
那么,如何迭代这个特定的 Dictionary<string, StringValues>
集合?
Dictionary<string, StringValues> queryStrings = QueryHelpers.ParseQuery(uri.Query);
foreach(var stringValues in queryString.Values){
foreach(var value in stringValues)
Console.WriteLine("VALUE: " + value);
}
如果您需要钥匙:
Dictionary<string, StringValues> queryStrings = QueryHelpers.ParseQuery(uri.Query);
foreach(var key in queryString.Keys){
Console.WriteLine("KEY: " + key);
foreach(var value in queryString[key]){
Console.WriteLine("VALUE: " + value);
}
}
当我打电话时
QueryHelpers.ParseQuery(uri.Query);
它returns
Dictionary<string, StringValues>
当我在 Visual Studio“本地”window 中查看此集合时,我看到如下内容:
Count = 4
{[q, {qOne, qTwo}]}
"q"
{qOne, qTwo}
{[selection, {sOne, sTwo}]}
"selection"
{sOne, sTwo}
{[color, {cOne, cTWo}]}
"color"
{cOne, cTwo}
{[option, {oOne, oTwo}]}
"option"
{oOne, oTwo}
如果我查看 Microsoft documentation 的 StringValues
,它说:
GetEnumerator() - Retrieves an object that can iterate through the individual strings in this StringValues.
这告诉我我应该能够做这样的事情:
Dictionary<string, StringValues> queryString = QueryHelpers.ParseQuery(uri.Query);
foreach(string key in queryString.Keys){
Console.WriteLine("KEY: " + key);
foreach(string value in queryString.Value[key].GetEnumerator()){
Console.WriteLine("VALUE: " + value);
}
}
但是没有任何选项 queryString.Value[key]
我需要这样做。
那么,如何迭代这个特定的 Dictionary<string, StringValues>
集合?
Dictionary<string, StringValues> queryStrings = QueryHelpers.ParseQuery(uri.Query);
foreach(var stringValues in queryString.Values){
foreach(var value in stringValues)
Console.WriteLine("VALUE: " + value);
}
如果您需要钥匙:
Dictionary<string, StringValues> queryStrings = QueryHelpers.ParseQuery(uri.Query);
foreach(var key in queryString.Keys){
Console.WriteLine("KEY: " + key);
foreach(var value in queryString[key]){
Console.WriteLine("VALUE: " + value);
}
}