//Institutions记录可能下挂多条组织记录,多以一个Institutions记录对应多条Organization
//Organization是个对象,组织,有字段Id主键(整型)
//query里面的变量organizationIds是表示多条Organization记录,organizationIds存的是多个id,在下面list里面看到的
//item.organizationIds自动被映射成了id集合
var query = from inst in dbContext.Institutions
//一个Institutions记录对应多条Organization,且id以从小到大排序
let organizationIds = (from o in dbContext.InstitutionOrganizationLinks.Where(w => w.Institution.Id == inst.Id && w.DeletedAt==null)
//select new { oid = o.Organization.Id }
select o.Organization.Id
).OrderBy(x=>x)
where inst.Title.Equals(model.Title)
&& inst.SerialNo.Equals(model.SerialNo)
&& inst.Status==model.Status
&& inst.UploadTime== model.UploadTime
select new { inst, organizationIds };
var list =await query.ToListAsync();
SortedList<int, string> ckList = new SortedList<int, string>();
foreach (var item in list)
{
string ids = string.Join(",", item.organizationIds);
ckList.Add(item.inst.Id, ids);
}