ASP.NET(*.aspxおよび*.tt)では、次のマークアップの意味は何<#= #> <# #> <#+ #>ですか?
1 に答える
6
質問で説明するマークアップは、ASP.NETとは何の関係もありません。これらは、T4テンプレートマークアップ構文の例です。T4テンプレートはVisualStudio内で変換され、あらゆるタイプのファイルを作成するために使用できますが、最も一般的にはコード生成に使用されます。
<#= #>マークアップ内のコードを実行し、テキスト結果を返します。例:
// in this example, TargetNamespace is set to "MuhNamespace"
namespace <#= this.TargetNamespace #> { // outputs: namespace MuhNamespace
<# #>内のコードを実行しますが、を返しますvoid。例:
This collection contains the following foos:
<#foreach(var foo in bar){ #>
<#= foo.Name + Environment.NewLine #>
<# } #>
<#+ #>テンプレート内で呼び出すことができる再利用可能なメソッドを定義します。例えば、
This collection contains the following types:
<#foreach(var foo in bar){ #>
<#= GetType(foo) #>
<# } #>
<#+ public string GetType(foo){ return foo.GetType().FullName; } #>
これらも他にもありますが、その例はここにあります。
于 2012-08-20T13:56:51.940 に答える