Я видел несколько примеров и ответов на StackOverflow, объясняющих, что это был бы рекомендуемый способ создания QueryString для манипуляции.
NameValueCollection test = HttpUtility.ParseQueryString(String.Empty);
test.Add("hello", "world");
Console.WriteLine(test.ToString());
Но все, что он возвращает, это
System.Collections.Specialized.NameValueCollection
В чем дело?Простое консольное приложение .NET4 для тестирования (также пробовал ранее Frameworks).Если я не передаю пустую строку, она начинает работать, но кажется странным, что есть так много сообщений, рекомендующих это как решение.Также обернул его в оператор try / catch, чтобы посмотреть, происходит ли что-то странное, и не выдается никаких исключений.Действительно ли я должен просто дать ему случайную строку «a = b», а затем удалить ее из коллекции NameValueCollection, чтобы получить пригодную для использования коллекцию HttpValueCollection?
Моя конечная цель - использовать это с UriBuilder, захватываяЗапросить у него свойство и передать его в ParseQueryString.Однако иногда может отсутствовать строка запроса, UriBuilder.Query возвращает пустую строку ... таким образом, эта проблема возникла.
РЕДАКТИРОВАТЬ: В случае, если кто-то был сбит с толку, что я намерендля него распечатывается строка запроса, эквивалентная коллекции.Поэтому, если бы я добавил еще одно значение в коллекцию
test.Add("other", "value");
Результат метода ToString () должен быть
"hello=world&other=value"
РЕДАКТИРОВАТЬ ПРИВЕТ ДЭЙВ Мои претензии?Почему это не работает ...