在 Int32 列表上使用 Linq 的 Contains 方法时,获取“您无法从 'int?' 转换为 'int'”
本文关键字:int 您无法从 转换 列表 Int32 Linq 获取 方法 Contains | 更新日期: 2023-09-27 17:56:44
问题是我有一个 Int32 列表,我需要查看另一个列表的元素是否在第一个列表中。
这是我的实际代码:
var b = ML_Contratos.Where(m => m.Borrado == false && m.Idproyecto == 492)
.Select(m=> m.Idcontrato)
.ToList();
var lista = ML_AdyDeds.Where(a => b.Contains(a.Idcontrato) && a.Autorizado == false)
.Select(a => a.Idcontrato)
.ToList();
我遇到的错误是:
"你不能从'int?'转换为'int'"
有没有办法做到这一点?
作为将
可为空的整数转换为整数的替代方法,您可以在整数集合上调用.Cast<int?>()
以将它们转换为可为空的整数。