Resharper的代码检查建议在C#中几乎所有地方都使用var而不是显式类型。 我不喜欢这个选项,因为太多的var会使事情变得不清晰,所以我已经禁用了该选项。 但是,在初始化时与泛型相同行两次使用类型(类似于Java 7中的钻石运算符)的情况下,我喜欢使用var,例如:
我在Resharper中创建了一个自定义模式:
Dictionary<string string> dic = new Dictionary<string, string>();
// I want a suggestion to replace this to
var dic = new Dictionary<string, string>();
// but I don't want to replace things like this:
Person p = new Person();
我在Resharper中创建了一个自定义模式:
Dictionary<$type1$, $type2$> $id$ = new Dictionary<$type1$, $type2$>();
替换为:
var $id$ = new Dictionary<$type1$, $type2$>();
这个方法本来运行良好,但是该模式还会匹配已经根据规则转换过的行。如何解决这个问题?
编辑:将文本的一部分加粗,因为似乎没有人读它。