ASP.NET MVC:在C#代码块中使用@

Fra*_*ein 1 .net asp.net-mvc html-helper razor

我对@的使用有点困惑.在下面的代码中我首先编写Html.ActionLink(...)而不是@Html.ActionLink(...)因为我在一个if块(C#代码).因此,我想确切地了解何时必须使用@以及何时不必使用它.

<td width="32%" align="center">
     @if (Model.SeccionImpresos != null)
     {
           @Html.ActionLink("IMPRESOS", "Index", "Trabajo", null, null, "#impresos", new { id = Model.Id }, null);
     }
</td>
Run Code Online (Sandbox Code Playgroud)

我对此有所帮助.

SLa*_*aks 6

@ 有两个用途:

  • 它用于从标记上下文(而不是从另一个代码块)启动代码(@if,@foreach@ {...}等)

  • 它用于代码 - 表达式写入输出流(@expression).

Html.ActionLink不在@代码块中写入会创建一个丢弃其结果的常规方法调用.