我的数据库中有几个人。其中一些列在“OverviewSortOrders”表中,但不是全部。当我在我的 linq 中收集我的所有人员时,我加入了 OverviewSortOrders 但未在该表中列出的人员当然不在我的结果中。但我想要那些人,即使他们是否在那个桌子上。
from...
join...
join..
join sorting in db.OverviewSortOrders on person.PersonRef equals sorting.PersonRef into moso
from subsorting in moso.DefaultIfEmpty()
where subsorting.UserRef == rp.UserRef
select new
{
SortOrder = (subsorting == null ? int.MaxValue : subsorting.SortOrder),
...
...
如果人员不在表中,则不会出现以下情况:“其中 subsorting.UserRef == rp.UserRef”。但即使它们在表中或不在表中,我也想将它们收集到我的列表中。但是在那些有 sortOrder 的情况下,我会设置它的值。
问题是:我是否可以在 linq 中解决这个问题,并给那些有价值的人一个价值,给那些不在桌子上的人一个 maxValue。或者我是否需要从我上面粘贴的 linq 中取出那部分。并收集我所有的人(即使他们是否在“OverviewSortOrders”表中)然后给他们价值?