我正在重新编写一些代码,同时维护外部接口。我现在需要处理的方法具有以下签名:
public Dictionary<int, string> GetClientIdNames()
在确认它已填充后,如果需要,此操作最初直接返回一个后备字段。现在需要存储其他数据,因此支持字段如下:
private Dictionary<int, Client> _clients;
public struct Client
{
public int ClientId { get; set; }
public string ClientName { get; set; }
public string Password { get; set; }
}
因此,除了使用
foreach
的Dictionary<int, string>
属性简单地循环使用Dictionary<int, Client>
从ClientName
构造Client
之外,我该如何即时执行此转换? 最佳答案
var clientNames = _clients.ToDictionary(kvp => kvp.Key, kvp => kvp.Value.ClientName);
关于c# - 将Dictionary <T,U>转换为Dictionary <T,U.PropertyValue>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3683361/