我有一组LINQ结果,如下所示:

var dictionaryHere = db.tbl_user_pass_list
      .Where(e => e.Usage1 == "Domain Administrator");


这将返回许多属性,其中我需要AdminUsername和AdminPassword和Company。

我为此设置了一个类:

public class AdminUsernamePassword
{
    public string AdminUsername { get; set; }
    public string AdminPassword { get; set; }
}


我要生成的是一个词典,其中的键是company,并且该值包含AdminUsername和AdminPassword。我到目前为止:

 Dictionary<string, AdminUsernamePassword> dictionary = dictionaryHere.ToDictionary(o => o.Company,


我不确定如何完成此操作,但要获取其他两个值作为AdminUsernamePassword类型。任何帮助表示赞赏!

最佳答案

您只需要指定Value中的KeyValuePair。您已经有了密钥:

dictionaryHere.ToDictionary(o => o.Company, [...])


您只需要创建您的Value

dictionaryHere.ToDictionary(o => o.Company,
                            x => new AdminUserPassword
                            {
                              AdminUserName = x.UserName,
                              AdminPassword = x.Password
                            });

关于c# - C#LINQ转字典,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29818252/

10-12 15:42