web-dev-qa-db-ja.com

T4テンプレートのコメント

これはそのような基本的な質問のようですが、それを解決するMSDNの記事またはStackOverflowの質問を見つけることができませんでした。T4テンプレートで行コメントを作成したりコメントをブロックしたりすることは可能ですか?私はコメント付きのコードを生成するのではなく(簡単で簡単です)、T4マークアップのブロックをコメント化します。それは可能ですか?

49
amoss

制御コードの一部としてコメントを含めるには、コメントが何らかのコードブロック内にある必要があります

<# // Hello this is a comment #> for example

または

<#+ // Hello this is a comment in a class feature block #>

出力の余分な改行に敏感な場合は、閉じるタグを次の行にプッシュする必要がある場合があります。

マークアップのブロック全体をコメント化したい場合、残念ながら簡単な解決策はなく、結果はかなり醜くなります。

コメントを付けたいタグを次のようにエスケープすることでそれを行うことができます:

\<# my control code \#>

それを次のように別のブロックのコメント内に配置します:

<# // \<# my control code \#> #>
58
GarethJ

ブロックコメントを追加する最良の方法は、#ifと#endifを使用することです

<#
   #if false
   foreach(var typeName in typeNames)
   { 
       var className = typeName + "Adapter";
#>
    // ...
<#  
    }
    #endif
#>
15
engineforce