我是CodeRush的忠实粉丝以及他们围绕模板的理念。在我目前的工作中,我们将进行大量的配对,并且共识是对ReSharper(v6)的偏好,这几乎让我处于一个我必须使用它的地方。
我不打算在这里开始CodeRush / Resharper战争。 Resharper有很多值得关注的东西,但有一件事我很难在ReSharper中过去。
ReSharper的Live模板机制,很好,没有内置的概念来输入CodeRush的方式(至少不是我所知道的)。一个简单的例子如下。生成以下代码:
public String MyStringProperty { get; set; }
在CodeRush中...我可以输入“as”(对于AutoProperty为'a',对于字符串为's'),然后只需更改属性的名称。
在ReSharper中,我需要输入“prop”(对于Property),然后设置类型和名称。
在ReSharper的实时模板中似乎没有关于类型感知或类型快捷方式的类似概念。因此,似乎没有任何类似于众多的两个和三个字符模板,以获得预先输入的变量,属性,方法等...
所以,最后问题毕竟是那个背景。在没有为每个模板/类型组合创建新的实时模板的情况下,有没有办法在ReSharper中复制“类型模板”这个概念?
答案 0 :(得分:4)
目前,ReSharper不支持您所指的使用模式。 然而,我可以考虑两种方法来实现这一目标。
请注意,无论您选择哪个选项,都无法通过按 Space 来扩展模板 - 这在ReSharper现在根本无法实现。
如果您有其他问题,请与我们联系。
的Dmitri
答案 1 :(得分:3)
我认为不可能让Resharper拥有一个带有单个字母名称后跟一个字母类型的模板。您必须为每种类型创建一个新模板,例如'as'并将其定义为:
public string $NAME$ { get; set; }
您可能希望更改可用的位置,即允许使用类型成员声明的C#文件。
您可以将'prop'模板重命名为'a',然后输入:'a',TAB,'s',TAB,TAB,'property_name',TAB