Можно ли разбить строку на словарь? - PullRequest
0 голосов
/ 02 февраля 2010

Можно ли разбить строку на '&' и запустить словарь за один раз, или вы должны сначала использовать массив строк?

Я хочу принять часть URL:

? a = 2 & b = 3

и загрузить a dictionary<string,string>

Ответы [ 2 ]

3 голосов
/ 02 февраля 2010

Дубликат вашего собственного вопроса ...

Лучший способ взять все пары строк запроса и создать словарь

Как сказал womp, HttpUtility.ParseQueryString () - ваш лучший выбор.

Edit:
После небольшой копки я нашел следующий метод расширения NameValueCollectionExtensions.CopyTo (это NameValueCollection, IDictionary ), который можно использовать для заполнения истинного IDictionary.

1 голос
/ 02 февраля 2010

Исходя из заданного формата, я думаю, вы хотите что-то вроде этого:

var dict = queryString
    .Substring(1) // to skip the "?"
    .Split("&")
    .Select(s => s.Split("="))
    .ToDictionary(sa => sa[0], sa => sa[1]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...