У меня есть метод, который принимает несколько строк в отдельных параметрах
public string GetQueryString(string string1, string string2, string string3...)
Должен возвращать строку в виде
"string1:value1 string2:value2 string3:value3..."
Поскольку я не хочу помещать логику отражения в вызывающие элементы GetQueryString
, я думаю, что работать с параметрами string[,]
не вариант.
Теперь мне нужно пройтись по всем моим параметрам и добавить «parName:parValue
» к моему S tringBuilder
.
В настоящее время я делаю это, проверяя каждый из них с помощью if
clause
if (!string.IsNullOrEmpty(string1))
sb.AppendFormat("{0}:{1}", "string1", string1);
Как это можно улучшить?
- ОЧИЩЕНИЕ -
Я считаю, что ОП хочет сделать что-то вроде этого:
string str1 = "Hello";
string s2 = "World";
string MyStr = "Greetings";
string YourStr = "Earthlings";
string query = GetQueryString(str1, s2, MyStr, YourStr);
и вернуть
"str1:Hello s2:World MyStr:Greetings YourStr:Earthlings"
- EDIT -
уточнение правильное.
Кроме того, поскольку мой метод называется GetQueryString, это не значит, что я работаю над строкой запроса HTML. В данном конкретном случае это фактически строка запроса Lucene. Но это может быть любая функция поиска, которая может анализировать строки в запросе.