在研究如何將NameValueCollection轉換爲查詢字符串時,我遇到了不同的方法。我很好奇,如果更短的lambda語法是有效的,它可能是。正在使用c#lambda有效性將NameValueCollection轉換爲查詢字符串?
How to convert NameValueCollection to a (Query) String使用迭代函數。
public static String ConstructQueryString(NameValueCollection parameters)
{
List<String> items = new List<String>();
foreach (String name in parameters)
items.Add(String.Concat(name, "=", System.Web.HttpUtility.UrlEncode(parameters[name])));
return String.Join("&", items.ToArray());
}
Join a NameValueCollection into a querystring in C#使用lambda表達式,這看起來不錯,但我不知道這是否是有效的代碼。
private static string JoinNvcToQs(NameValueCollection qs)
{
return string.Join("&", Array.ConvertAll(qs.AllKeys, key => string.Format("{0}={1}", HttpUtility.UrlEncode(key), HttpUtility.UrlEncode(qs[key]))));
}
對於那些(像我)誰在這個偶然的的一般方法從NameValueCollection生成url,這對於具有多個值的參數無法正常工作。提示:遍歷'parameters.GetValues(key)'。 – mcNux 2014-06-12 15:30:53