保存したタイトルをデータベースから取得しようとしています。ビューを使用せずに毎回ロードしたい。そのため、レイアウトから呼び出すときに変数をプルする必要があります。これどうやってするの?
レイアウト例:
@ViewBag.ShowTitle
これは、レイアウトをレンダリングするすべてのページに表示されます。コントローラーなしでデータベースから画面にフィールドを呼び出す方法がわかりません。
保存したタイトルをデータベースから取得しようとしています。ビューを使用せずに毎回ロードしたい。そのため、レイアウトから呼び出すときに変数をプルする必要があります。これどうやってするの?
レイアウト例:
@ViewBag.ShowTitle
これは、レイアウトをレンダリングするすべてのページに表示されます。コントローラーなしでデータベースから画面にフィールドを呼び出す方法がわかりません。
PartialView
ページでaを呼び出すだけ_Layout.cshtml
です。
@Html.Partial("_Title")
Controller
ただし、データベースと対話し、Title
値をに割り当てるには、が必要ですViewBag
。
PartialView
<div>
<h2>
@ViewBag.ShowTitle
</h2>
</div>
次のリンクで説明されているように、内部でViewModel
、、Controller
および呼び出しを定義することもできます。@Html.Action
_Layout.cshtml
データベースが直接Webアクセス(Raven DB http://ravendb.net/docs/http-apiなど)をサポートしている場合にのみ、コントローラーの使用を回避できます。
ただし、セッションでトリックを使用することもできます。たとえば、タイトルを読み取ってglobal.asaxのSessionに保存し、ページのセッション変数を使用できますが、そのようなコードを作成するのは非常に悪いことです。