gpt4 book ai didi

asp.net - 将 Dictionary 加入查询字符串的最快方法是什么?

转载 作者:行者123 更新时间:2023-12-03 18:11:38 27 4
gpt4 key购买 nike

我有以下数据:

Dictionary<string,string> dctParameters = new Dictionary(){
{"a",var1},{"b",var2},{"c",var3},....
}

我想将“dctParameters”加入查询字符串中。

以下方式中最快/最好的是什么?你能想到更好的方法来做到这一点吗?

第一种方法:
StringBuilder data = new StringBuilder();
string result = dctParameters.Aggregate(data, (x, pair) => data.Append(pair.Key).Append("=").Append(pair.Value).Append("&")).ToString();

方法二:
StringBuilder data = new StringBuilder();
foreach (var item in dctParameters)
{
data.Append(string.Format("{0}={1}&",item.Key, item.Value));
}
string result = data.ToString();

第三种方法:
StringBuilder data = new StringBuilder();
foreach (var item in dctParameters)
{
data.Append(item.Key).Append("=").Append(item.Value).Append("&");
}
string result = data.ToString();

最佳答案

作为 Eric 建议的变体的扩展方法如何:

public static string ToQueryString(this Dictionary<string, string> dict)
{
return '?' + string.Join("&", dict.Select(p => p.Key + '=' + p.Value).ToArray());
}

例如:
dctParameters.ToQueryString();

考虑到这种过程不太可能使服务器陷入困境,因此您的任何实现的性能成本真的不值得失眠。问题是(如您所说)最好不要更快,而且您似乎追求的是一种优雅的方法,而不是最少的 CPU 周期。

关于asp.net - 将 Dictionary<string,string> 加入查询字符串的最快方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1232802/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com