gpt4 book ai didi

c# - 从 linq 查询返回 Dictionary

转载 作者:可可西里 更新时间:2023-11-01 08:15:55 24 4
gpt4 key购买 nike

我有一个表,其中 2 列定义为 varchar(50):Column1 和 Column2。我想返回 <string, string> 的字典其中每一行都在字典中,其中 Column1 是键,Column2 是值。这是我的:

public Dictionary<string, string> LoadAllTheDataFromDB()
{
using (MyDC TheDC = new MyDC())
{
return (from c in TheTable
select new Dictionary<string, string>()
{
//stuck here

}).FirstOrDefault();

}
}

如何让字典充满?

最佳答案

试试这个:

var dict = TheTable.Select( t => new { t.Col1, t.Col2} )
.ToDictionary( t => t.Col1, t => t);

请记住,在 select lambda 中,您将执行投影并创建一些匿名对象。然后在 ToDictionary 中你将传递两个参数:第一个参数是一个 lambda 来指定键;在上面的代码中,我们选择 Col1 作为键。第二个参数是一个 lambda 来指定值;在上面的代码中,我们选择对象本身作为值。

如果您希望该值是匿名类型,请像这样更改第二个 lambda:

ToDictionary( t => t.Col1, t => new { t.Col2 });

如果您希望该值是您定义的类型,请像这样更改第二个 lambda:

ToDictionary( t => t.Col1, t => new YourType { Prop1 = t.Col2 });

关于c# - 从 linq 查询返回 Dictionary<string, string>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40698370/

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