在ASP.NET(*.aspx
和*.tt
)中,以下标记的含义是什么:<#= #>
<# #>
<#+ #>
?
答案 0 :(得分:6)
您在问题中描述的标记与ASP.NET无关。它们是T4模板标记语法的示例。 T4模板在Visual Studio中进行转换,可用于创建任何类型的文件although most commonly they are used for code generation。
<#= #>
执行标记中的代码并返回文本结果。例如:
// 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; } #>
还有更多这些例子can be found here.