C# 需要在c中按键和值将两个字典相交#
我有两个结构:C# 需要在c中按键和值将两个字典相交#,c#,.net,linq,C#,.net,Linq,我有两个结构: public struct Customer { public string Code { get; set; } public string Name { get; set; } public string Address { get; set; } } public class OrganizationDto { public int OrgId { get; set; } public string Name { get; set;
public struct Customer
{
public string Code { get; set; }
public string Name { get; set; }
public string Address { get; set; }
}
public class OrganizationDto
{
public int OrgId { get; set; }
public string Name { get; set; }
public int PeopleCount { get; set; }
public string CCEmail { get; set; }
public string address { get; set; }
}
和2本字典:
Dictionary<string, Customer> dataCustomer = new Dictionary<string, Customer>();
Dictionary<string, OrganizationDto> dataOrganization = new Dictionary<string, OrganizationDto>();
Dictionary dataCustomer=newdictionary();
Dictionary dataOrganization=新建字典();
我如何通过:键和不同的地址。因此,我需要具有相同密钥但具有不同地址的项。
我试过:
Dictionary<string, OrganizationDto> changed = dataOrganization
.Where(item => dataCustomer .Keys.Contains(item.Key))
.ToDictionary(item => item.Key, item => item.Value);
Dictionary changed=dataOrganization
.Where(item=>dataCustomer.Key.Contains(item.Key))
.ToDictionary(item=>item.Key,item=>item.Value);
这给了我关键的交叉点,但我没有;I don’我不知道如何只选择地址不同的(当然还有公用键)
感谢您在筛选时比较地址属性
var changed = dataOrganization
.Where(item => dataCustomer.Keys.Contains(item.Key)
&& item.Address != dataCustomer[item.Key].Address)
.ToDictionary(item => item.Key, item => item.Value);