错误 CS1929“int[]”不包含“包含”的定义

B.Y*_*B.Y 2 c#

错误 CS1929“int[]”不包含“Contains”的定义,并且最佳扩展方法重载“Queryable.Contains<int?>(IQueryable<int?>, int?)”需要类型为“IQueryable<int”的接收器?

一旦我尝试运行代码,就会出现此错误,我不知道如何修复它。这是代码

public void SendModelPallet(string IDs, StorageContext db)
{
    int[] ids = ViewModelsUtils.processIDs(IDs);
    PalletBoxes = db.ExternStoragePlaces.Where(c => ids.Contains(c.PalletPlaceID)).ToList();
    this.db = db;
}
Run Code Online (Sandbox Code Playgroud)

提前致谢

Pac*_*ac0 5

这里只是一个猜测,但我记得在一些 Linq to SQL 查询中遇到了 null 合并问题。我建议您尝试将 ids 数组声明为:

int?[] ids = ViewModelsUtils.processIDs(IDs);
Run Code Online (Sandbox Code Playgroud)

(使用int?[]而不是这样int[]这将匹配您的字段类型)

对此不确定,首先是因为它似乎与编译错误消息不匹配,其次是因为我暂时没有办法测试它。