gpt4 book ai didi

c# - 加入字典中的键和值

转载 作者:行者123 更新时间:2023-11-30 13:44:50 25 4
gpt4 key购买 nike

有没有办法快速(即不使用 foreach)连接以下 Dictionary:

Dictionary<string, string> g = new Dictionary<string, string>();
g.Add("K", "k1");
g.Add("L", "l1");

进入

"K=@K,L=@L"

如何得到这个结果:"K=k1,L=l1"

我正在尝试使用 String.Join,但这似乎并没有达到我想要的效果。

一些背景:我有一个键/值对列表,我想在我的数据库中插入 (...keys...) VALUES (...values...) 或更新记录 ...,key=value, ...

最佳答案

您可以使用 LINQ 轻松完成此操作,它仍在使用 foreach在幕后,所以它不会“更快”,但它应该易于阅读。

Dictionary<string, string> g = new Dictionary<string, string>();
g.Add("K", "k1");
g.Add("L", "l1");

var keys1 = g.Select(x=>String.Format("{0}=@{0}", x.Key));
var result1 = String.Join(",", keys1);
Console.WriteLine(result1);

var keys2 = g.Select(x=>String.Format("{0}={1}", x.Key, x.Value));
var result2 = String.Join(",", keys2);
Console.WriteLine(result2);

Run Code

我们做的第一件事是制作一个 IEnumerable<String>我们想要的项目,然后我们使用 string.Join将该 IEnumerable 组合成一个字符串。

编辑:
如果您要更新到数据库,我建议放弃这种方法并尝试一些 ORM 库,如 Entity Framework 或 NHibernate。它们会为您完成所有这些工作,让您更轻松地使用对象,而不必担心生成动态查询。

关于c# - 加入字典中的键和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34343315/

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