Możesz napisać to w ten sposób lub wykonać pętlę, aby zrobić to sam. Tak czy inaczej. Ostatecznie dzielisz się na ;
, aby uzyskać pary przedmiotów, a następnie =
, aby uzyskać klucz i wartość.
string input = "key1=value1;key2=value2;key3=value3;";
Dictionary<string, string> dictionary =
input.TrimEnd(';').Split(';').ToDictionary(item => item.Split('=')[0], item => item.Split('=')[1]);
wersja Loop:
Dictionary<string, string> dictionary = new Dictionary<string, string>();
string[] items = input.TrimEnd(';').Split(';');
foreach (string item in items)
{
string[] keyValue = item.Split('=');
dictionary.Add(keyValue[0], keyValue[1]);
}
To jest w zasadzie kopią tego pytania: http://stackoverflow.com/questions/776107/best-way-to-convert- query-string-to-dictionary-in-c Przypuszczam, że musiałbyś zamienić ';' na '&', zanim to by działało. –