Общей задачей при вызове веб-ресурсов из кода является построение строки запроса для включения всех необходимых параметров. Несмотря на то, что никакая наука о ракетах не существует, есть некоторые изящные детали, о которых вам нужно позаботиться, добавив &
, если не первый параметр, кодирующий параметры и т.д.
Код для этого очень простой, но немного утомительный:
StringBuilder SB = new StringBuilder();
if (NeedsToAddParameter A)
{
SB.Append("A="); SB.Append(HttpUtility.UrlEncode("TheValueOfA"));
}
if (NeedsToAddParameter B)
{
if (SB.Length>0) SB.Append("&");
SB.Append("B="); SB.Append(HttpUtility.UrlEncode("TheValueOfB")); }
}
Это такая общая задача, которую можно было бы ожидать, чтобы существовал класс утилит, который делает его более элегантным и читаемым. Сканирование MSDN, мне не удалось найти один из них, и это подводит меня к следующему вопросу:
Какой самый элегантный способ, которым вы знаете, что вы делаете выше?