2

thisRazor 構文でのキーワードの使用について問題があります。

このようなものを書くと:

@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 "@".

私には2つの解決策があります。

1)@:@または<text>

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

-また-

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

this2)プレフィックスを削除します

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

ご想像のとおり、StyleCop ルールに従っており、Razor 構文でも実行したいと考えています。

キーワードの使用を防止する他の方法はあります<text>か?@:@this

4

0 に答える 0