2013-01-18 16 views
8

Wenn ich an einer Ansicht in Razor arbeite, und ich bin derzeit in einem Codeblock und möchte etwas ausgeben, wie mache ich das? Auf meine Frage veranschaulichen, ich bin mit echo von PHP unter:asp.net mvc razor - wie aus c ausbrechen #

<p> 
    @if (Model.NumberOfWidgets > 100) 
    { 
    echo(Model.NumberOfWidgets); 
    } 
    else 
    { 
    echo("There are loads of widgets."); 
    } 
</p> 

So echo Ich verwende, wo ich will Razor sagen, dass ich nicht mehr C# zu tun, ich bin dies bedeuten, soll geschrieben werden zum Ausgang. Wie mache ich das?

Edit: Ich habe Response.Write versucht, aber das wird vor der Ansicht Markup geschrieben, am oberen Rand der Seite!

+2

Relevant: http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx – WickyNilliams

Antwort

12
<p> 
    @if (Model.NumberOfWidgets > 100) 
    { 
    @Html.DisplayFor(m => m.NumberOfWidgets) 
    } 
    else 
    { 
    @:There are loads of widgets //or <text>Thera are loads of widgets</text> 
    } 
</p> 
+0

Ich kann nicht glauben, ich habe noch nie zuvor gesehen. – David

4

Beginnen Sie Ihre Linie mit @: dies Razor sagen, dass es ouput eigentlich, dass Sie und nicht C# -Code zu zeigen.

<p> 
    @if (Model.NumberOfWidgets > 100) 
    { 
    @: @Model.NumberOfWidgets 
    } 
    else 
    { 
    @: There are loads of widgets. 
    } 
</p>