我正在寻找一个错误提升来防止构建,如果我的静态字典中有重复的键。编译器检查字典中的键是否唯一
我下面
public static readonly Dictionary<string, string> Fruits = new Dictionary<string, string>
{
{"Sobeys", "Apples"},
{"NoFrills", "Oranges"}
}
但可以说,有人不小心改变索贝斯是Nofrills,我想一个编译器错误当前字典待提高,以防止任何东西要做,直到重复键解决。请问可能吗?如果是这样,我会怎么做?
public static readonly Dictionary<string, string> Fruits = new Dictionary<string, string>
{
{"NoFrills", "Apples"},
{"NoFrills", "Oranges"}
}
你必须,如果你希望它有比C#的规则,不同的行为写自己的编译器。 – Servy
您使用的是Visual Studio 2015或更新版本?如果是这样,可以使用自定义[实时代码分析器](https://msdn.microsoft.com/en-us/magazine/dn879356.aspx),但它将成为一项非繁杂的工作量强大的。 –
@Servy因为C#是开源的,所以也许应该向社区提交补丁。 https://github.com/dotnet/roslyn –