代码检查:替换为 OfType<T>().Single()(替换为 OfType<T>().Single(..))
此检查报告了一个 LINQ 查询,使用 as 进行类型转换,筛选出 null ,然后期望正好有一个符合额外条件的元素。 相同的查询使用 OfType<T>().Single(...) 更易阅读。
示例
var item = items.Select(x => x as Person).Single(y => y != null && y.IsActive);
var item = items.OfType<Person>().Single(y => y.IsActive);
快速修复
将 Select(... as T).Single(y => y != null && ...) 模式替换为 OfType<T>().Single(...)。
2026年 5月 8日