1
Как мне указать, где условие в этом запросе включено в предложение?Linq Where Clause with Into
var res = from aa in db.UserMsts.Where(p => p.Id == id)
join bb in db.UserGrpHdrs on aa.usrgrpid equals bb.usrgrpid
join cc in db.UserGrpDtls on aa.usrgrpid equals cc.usrgrpid where cc.pageid == pg
join dd in db.UserPrivHdrs on new { aa.usrgrpid, userid = aa.Id } equals new { dd.usrgrpid, dd.userid } into ddd
from dd in ddd.DefaultIfEmpty()// <== left outer join
//Error in following line
join ee in db.UserPrivDtls on dd.usrprivid equals ee.usrprivid
where ee.pageid == pg into eee // error here at into
from ee in eee.DefaultIfEmpty() // <== left outer join
select new UserPrivDto{
CanAdd = ee.addpriv != null ? ee.addpriv : cc.addpriv,
CanEdit = ee.editpriv != null ? ee.editpriv : cc.editpriv,
CanView = ee.viewpriv != null ? ee.viewpriv : cc.viewpriv,
CanDel = ee.delpriv != null ? ee.delpriv : cc.delpriv,
};
UserPrivDtls должен быть отфильтрован и должен быть соединен с левым внешним соединением.
ошибка является
Тело запроса должно заканчиваться выбора пункта или пункта группы
. Благодаря
Вы можете использовать 'db.UserPrivDtls.Where (EE1 => EE1 .pageid == pg) ', так же, как вы делаете с' db.UserMsts.Where'. –
@GertArnold Спасибо Это сработало. Должен сделать ответ. – Deb