包括null检查以查找列表中的索引

时间:2013-02-13 17:28:02

标签: c# linq

我可以在此代码中包含null检查:

var index = someList.FindIndex(p => p.Bla1.Id == Dto.Id || p.Bla2.Id == Dto.Id);

Bla1和Bla2都可以为null。感谢。

2 个答案:

答案 0 :(得分:10)

这个怎么样:

var index = someList.FindIndex(p => (p.Bla1 != null && p.Bla1.Id == Dto.Id) 
                                 || (p.Bla2 != null && p.Bla2.Id == Dto.Id));

答案 1 :(得分:0)

是的,你可以=)

如果您要求如何执行此操作:

var index = someList.FindIndex(p => (p.Bla1 != null && p.Bla1.Id == Dto.Id) || (p.Bla2 != null && p.Bla2.Id == Dto.Id));

但一切都取决于你想如何处理空值