第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法創(chuàng)建類型的常量值此上下文僅支持基元類型或枚舉類型

無法創(chuàng)建類型的常量值此上下文僅支持基元類型或枚舉類型

慕娘9325324 2019-08-02 16:14:42
無法創(chuàng)建類型的常量值此上下文僅支持基元類型或枚舉類型我在下面的查詢中收到此錯誤無法創(chuàng)建類型的常量值A(chǔ)PI.Models.PersonProtocol。在此上下文中僅支持基元類型或枚舉類型ppCombined下面是一個IEnumerable對象PersonProtocolType,由2個PersonProtocol列表的concat構(gòu)成。為什么這會失?。课覀儾荒苁褂肔INQ JOIN條款里面SELECT的JOIN?var persons = db.Favorites     .Where(x => x.userId == userId)     .Join(db.Person, x => x.personId, y => y.personId, (x, y) =>         new PersonDTO         {             personId = y.personId,             addressId = y.addressId,                                favoriteId = x.favoriteId,             personProtocol = (ICollection<PersonProtocol>) ppCombined                .Where(a => a.personId == x.personId)                 .Select( b => new PersonProtocol()                  {                      personProtocolId = b.personProtocolId,                      activateDt = b.activateDt,                      personId = b.personId                 })         });
查看完整描述

3 回答

?
繁星淼淼

TA貢獻(xiàn)1775條經(jīng)驗 獲得超11個贊

這不起作用,因為它ppCombined是內(nèi)存中對象的集合,您無法使用內(nèi)存中的另一組數(shù)據(jù)將數(shù)據(jù)庫中的一組數(shù)據(jù)連接起來。你可以嘗試,而不是提取經(jīng)過濾項personProtocol中的ppCombined集合中的內(nèi)存后,您檢索從數(shù)據(jù)庫中其他屬性:

var persons = db.Favorites
    .Where(f => f.userId == userId)
    .Join(db.Person, f => f.personId, p => p.personId, (f, p) =>
        new // anonymous object
        {
            personId = p.personId,
            addressId = p.addressId,   
            favoriteId = f.favoriteId,
        })
    .AsEnumerable() // database query ends here, the rest is a query in memory
    .Select(x =>
        new PersonDTO
        {
            personId = x.personId,
            addressId = x.addressId,   
            favoriteId = x.favoriteId,
            personProtocol = ppCombined                .Where(p => p.personId == x.personId)
                .Select(p => new PersonProtocol
                {
                    personProtocolId = p.personProtocolId,
                    activateDt = p.activateDt,
                    personId = p.personId                })
                .ToList()
        });


查看完整回答
反對 回復(fù) 2019-08-02
?
小唯快跑啊

TA貢獻(xiàn)1863條經(jīng)驗 獲得超2個贊

就我而言,我能夠通過執(zhí)行以下操作來解決問題:


我改變了我的代碼:


var r2 = db.Instances.Where(x => x.Player1 == inputViewModel.InstanceList.FirstOrDefault().Player2 && x.Player2 == inputViewModel.InstanceList.FirstOrDefault().Player1).ToList();

對此:


var p1 = inputViewModel.InstanceList.FirstOrDefault().Player1;

var p2 = inputViewModel.InstanceList.FirstOrDefault().Player2;

var r1 = db.Instances.Where(x => x.Player1 == p1 && x.Player2 == p2).ToList();


查看完整回答
反對 回復(fù) 2019-08-02
  • 3 回答
  • 0 關(guān)注
  • 1991 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號