在ASP.NET MVC Razor语法中使用此关键字

时间:2012-11-09 08:49:21

标签: razor coding-style this stylecop

我在使用Razor语法中的this关键字时遇到问题。

如果我写这样的话:

@foreach (var item in this.Model.Items)
{
   @this.Html.ActionLink(item.Title, "MyAction")
}

我会收到错误:Unexpected "this" keyword after "@" character. Once inside code, you do not need to prefix constructs like "this" with "@".

我有两个解决方案;

1)使用@:@<text>

@foreach (var item in this.Model.Items)
{
   @:@this.Html.ActionLink(item.Title, "MyAction")
}

-OR -

@foreach (var item in this.Model.Items)
{
   <text>
   @this.Html.ActionLink(item.Title, "MyAction")
   </text>
}

2)删除this前缀

@foreach (var item in this.Model.Items)
{
   @Html.ActionLink(item.Title, "MyAction")
}

您可能已经猜到我们正在遵循StyleCop规则,我们也希望在Razor语法中执行此操作。

在我们使用<text>关键字时,还有其他方法可以阻止使用@:@this吗?

0 个答案:

没有答案