1

我有一个实体框架语句,用于检查用户是否已经在队列中。看起来很简单,但由于某种原因,我得到了一个例外:

“转换为值类型 'Boolean' 失败,因为具体化值为 null。结果类型的泛型参数或查询必须使用可为空的类型。”

有谁知道为什么?

var campaignIds = campaigns.Select(c => c.Id);
return _queuedRecipientRepository.GetTable().Any(q => campaignIds.Contains(q.CampaignId) && q.Recipient.Id == recipient.Id);
4

1 回答 1

1

我想您应该将 Recipient 作为数据库结果的一部分。在 usings 中添加 System.Data.Entity

var campaigns = from q in context.Campaigns.Include(x => x.Recipient)
                where campaignIds.Contains(q.CampaignId) && q.Recipient.Id == recipient.Id
                select q.Id
于 2013-11-30T15:14:05.217 回答