2

私はこれに出くわしたことがないことに完全に困惑しています。標準メッセージとそれに続くカスタムメッセージを出力する「エラー」という共有ビューがあります。

@model System.Web.Mvc.HandleErrorInfo

@{
    ViewBag.Title = "Error";
}

<h2>
    Sorry, an error occurred while processing your request. @{ ViewData["ErrorMessage"].ToString(); }
</h2>

コントローラーの catch ブロック内で、ViewData をカスタム メッセージに設定しています。

    catch (Exception ex)
    {
        ...
        ViewData["ErrorMessage"] = "This is my custom message";
        return View("Error");
    }

ただし、ビューが読み込まれると、ViewData にキー "ErrorMessage" が表示されますが、文字列は出力されません。

4

1 に答える 1

3

ViewData["ErrorMessage"]応答に を書き出さないため、式には何も表示されません。

を使用@{ ... }して、出力に何も書き込まないかみそりコード ブロックを作成し、内部にあるコードを実行するだけです。

@出力に書き込むには、記号を使用する必要があります。

<h2>
    Sorry, an error occurred while processing your request. @ViewData["ErrorMessage"]
</h2>

かみそりの構文に関する詳細情報。

于 2013-05-04T15:30:13.773 に答える