我正在寻找 Msql 查询的对应物:
SELECT per.*,add.addressDescription FROM Persons per
JOIN Address add ON per.AddressId = add.AddressId
我有这个问题:
var query = persons.JOIN(address,per = person.addressId,add = addressId
(per,add) =>
new Persons{
addressDescription = add.addressDescription,
PersonId = per.PersonId,
PersonFirstName = per.PersonFirstName
PersonLastName = per.PersonLastName})
有没有办法在不单独分配 Persons
的其他属性的情况下填充 Persons.addressDescription
?想象一下,如果 Persons
还有 10 个属性。
我想避免使用像这样的循环:
foreach(Person person in PersonList)
{
foreach(Address address in AddressList)
{
if(person.addressId == address.addressId){
person.addressDescription = address.addressDescription
}
}
}
最佳答案
var query = persons.join(address,
per = person.addressId,
add = addressId
(per,add) =>
{
per.addressDescription = add.addressDescription;
return per;
});
关于C# linq lambda 连接和选择语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38300788/