Так что у меня есть два, если stament для обработки словарного значения. Если метод POST, мне просто нужно добавить параметры status
в словарь. Все остальные параметры одинаковы.Избегайте дублирования кода в SortedDictionary C#
var stringBuilder = new StringBuilder();
var dictionary = new SortedDictionary<string, string>();
if (method == "GET")
{
stringBuilder.Append("GET&");
stringBuilder.Append(Uri.EscapeDataString(url));
stringBuilder.Append("&");
dictionary = new SortedDictionary<string, string>
{
{ "oauth_version" , oauthVersion },
{ "oauth_consumer_key", consumerKey },
{ "oauth_nonce" , oauthNonce },
{ "oauth_signature_method" , oauthSignatureMethod },
{ "oauth_timestamp" , oauthTimeStamp },
{ "oauth_token" , accessToken },
};
}
if (method == "POST")
{
stringBuilder.AppendFormat("POST&{0}&", Uri.EscapeDataString(url));
dictionary = new SortedDictionary<string, string>
{
{ "oauth_version" , oauthVersion },
{ "oauth_consumer_key", consumerKey },
{ "oauth_nonce" , oauthNonce },
{ "oauth_signature_method" , oauthSignatureMethod },
{ "oauth_timestamp" , oauthTimeStamp },
{ "oauth_token" , accessToken },
{ "status" , status }
};
}
Есть ли пути, чтобы избежать дублирования в моем коде. Любое предложение было бы удобно.
Просьба рассмотреть.
Что вы подразумеваете под _ "duplicate" _? Что касается ключей словаря, то не может быть дубликатов. Я нахожу, что ваш вопрос трудно понять, что вам не нужно, чтобы дублировать? –
@VisualVincent, что я имею в виду, если метод POST Мне просто нужно добавить параметры состояния. Все параметры в get и method одинаковы. –