C#LINQ to Dictionary

Tri*_*ene 2 c#

我有一组LINQ结果如下:

var dictionaryHere = db.tbl_user_pass_list
      .Where(e => e.Usage1 == "Domain Administrator");
Run Code Online (Sandbox Code Playgroud)

这会返回许多属性,我需要AdminUsername和AdminPassword以及Company.

我有一个类设置:

public class AdminUsernamePassword
{
    public string AdminUsername { get; set; }
    public string AdminPassword { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想要生成的是Key是公司的字典,其值包含AdminUsername和AdminPassword.我已经达到了这个目的:

 Dictionary<string, AdminUsernamePassword> dictionary = dictionaryHere.ToDictionary(o => o.Company,
Run Code Online (Sandbox Code Playgroud)

我不知道如何完成此操作,但我将其他两个值作为AdminUsernamePassword类型.任何帮助赞赏!

ger*_*rmi 5

你只需要指定你ValueKeyValuePair.你已经有了钥匙:

dictionaryHere.ToDictionary(o => o.Company, [...])
Run Code Online (Sandbox Code Playgroud)

你只需要创建你的Value:

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