由于我只看了几个关于这个主题的帖子,但没有深入解释Visual Studio模板中参数的逻辑,我想我会在这里发布.
在MSDN文章之后,您可以向模板添加自定义参数,如果您想要更改它们,可以使用向导进行更改.
在模板的任何文件中(模板文件本身除外),您可以根据参数添加逻辑.逻辑只使用三个关键字.$ if $(%expression%),$ else $和$ endif $.所以说我在模板文件中有以下内容:
public string foo( string a )
{
return string.Format( @"foo( {0} );", a );
}
Run Code Online (Sandbox Code Playgroud)
我们想要添加一些逻辑,以确定我们是否要检查"a"是空还是空
public string foo( string a )
{
$if$ ( $shouldCheckForNullOrEmpty$ == true )
if ( !string.IsNullOrEmpty( a ) )
$endif$
return string.Format( @"foo( {0} );", a );
}
Run Code Online (Sandbox Code Playgroud)
当然,您可能希望为if语句添加大括号,因此您可能需要多个逻辑块.
所以这不是太糟糕,但这有一些技巧.字符串匹配的$ if $检查,即shouldCheckForNullOrEmpty必须等于"true".它也被写成$ if $($ shouldCheckForNullOrEmpty $ =="true"),但这不起作用.
具有单个表达式的单个if语句非常简单,所以现在对于更复杂的示例:
public string foo( string a )
{
$if$ ( $parameterCheckMode$ …Run Code Online (Sandbox Code Playgroud)