2011-07-06 149 views
109

在我CSHTML文件,我有好多塊用這樣的東西中顯示HTML:MVC3剃刀:代碼塊

@if(Model.foo) 
{ 
    <span>Hello World</span> 
} 

的唯一原因跨度有,因爲我無法找到任何其他方式強制它認識到「Hello World」是html的一部分,除非我將它包含在html標記中。有沒有一種很好的方式來逃避代碼,而不涉及在顯示器中添加無意義的標籤?

回答

195

你可以使用@:逃脫:

@if(Model.foo) 
{ 
    @:Hello World 
} 

或特殊<text>標籤未在響應輸出:

@if(Model.foo) 
{ 
    <text>Hello World</text> 
} 
12
@if(Model.foo) 
{ 
    @:Hello World 
} 
9

您可以在下面添加文字:

@if(Model.foo) 
{ 
    @:Hello World 
} 

當您使用@剃刀將其切換到代碼塊模式。因此你需要像上面那樣指定文本。

8
<text>Explicit HTML<text> 

@(Explicit C#) 
7

許多開發人員提供了許多方法上面。這裏是一個多這是在MVC 4做工精細..我希望它會爲MVC 3也工作..

@if(Model.foo) 
{ 
    @Html.Label("Hello World") 
}