代码检查:索引器初始值设定项前可能缺少逗号
该检查会报告对象初始值设定项中的可疑代码,看起来像是索引器初始值设定项意外地附加到了前一个成员初始值设定项。 实际上,这通常意味着在下一个索引器初始值设定项前缺少逗号。
示例
var container = new Container
{
Map = new Dictionary<int, string> { [0] = "zero" }[1] = "one"
};
这会被解析为对元素访问表达式结果的赋值,通常不是预期的结果。
如何修复
此检查没有专用的快速修复方案。 请添加缺失的逗号,使第二个索引器初始值设定项成为单独的初始值设定项条目。
var container = new Container
{
Map = new Dictionary<int, string> { [0] = "zero" },
[1] = "one"
};
2026年 5月 8日