ASP.NET MVC Web アプリケーションがあり、すべてのページで 1 つのマスターLayout.cshtml
ページが使用されています。通常は必要ですがRenderBody()
、データベースで有効にできるサイトシャットダウンメカニズムがあるため、基本的には次のようなレイアウトページが必要です。
@if(DbHelper.SiteIsShutDown) {
<h1>Site is shut down temporarily</h1>
}
else {
<h1>Welcome to the site</h1>
@RenderBody()
}
問題は、ifSiteIsShutDown
が true の場合RenderBody()
に呼び出されず、例外が発生することです。
レイアウト ページの「RenderBody」メソッドが呼び出されていません...
それで、これを回避する方法はありますか?レイアウト ページからの出力をレンダリングしたいだけで、ビュー ページからは何もレンダリングしたくありません。