2

リンクの生成を支援するために、次のヘルパーを使用しています。

@helper BuildLink(string name, string action, string controller)
    {
    var url = Url.Action(action, controller);
    bool isActive = Request.Url.AbsolutePath.Equals(url, StringComparison.InvariantCultureIgnoreCase);
    <li class="@(isActive ? "current" : String.Empty)"><a href="@(url)">@name</a></li>
}

それは素晴らしい働きをします。問題は、ドキュメントの別の場所で「li」タグを閉じる必要があることです。ヘルパーの「closeingli」の部分を削除すると、ビューを表示しようとするとエラーメッセージが表示されます。

パーサーエラーメッセージ:ヘルパーブロックに終了"}"文字がありません。このブロック内のすべての「{」文字に一致する「}」文字があり、「}」文字がマークアップとして解釈されていないことを確認してください。

この終了「li」タグを含める必要がある回避策はありますか?

4

1 に答える 1

6

タグの前に@:を配置した場合。かみそりの終了タグの検証を回避します。

@:<li>
于 2012-05-03T03:22:32.820 に答える