私はASP.NET MVCアプリケーションを持っています。私のアプリでは、私は複数のレイアウトファイル(〜10)があります。私は、レイアウトファイルを横切って同様のHTMLブロックを持っています。そのために、私は再利用可能なコントロールに入れたいと思っています。なぜなら、私はそれにいくつかの変更が必要になると思うからです。ASP.NET MVC - コンテンツで再利用可能なコントロール
このコントロールを使用するレイアウトファイルを参照するページの中には、コントロールのコンテンツ領域に何かを挿入したいものがあります。
_Layout.cshtml
@** MY REUSED BANNER CONTROL GOES HERE **@
<div class="container">
@RenderBody()
</div>
Banner.file [何を使用してくださいません]
<div class="container-fluid">
<div class="row">
<div class="col-lg-3">
Hello
</div>
<div class="col-lg-3">
@RenderSection("bannerContent", required: false)
</div>
<div class="col-lg-3">
Leave
</div>
</div>
</div>
マイページ:実証するために、私はこのようなレイアウトファイルを持っている想像してみてください。 cshtml
@{
Layout = "~/Views/Shared/_Layout.cshtml"
}
<div>
Main content goes here
</div>
@section bannerContent {
<div>This goes into Banner.file</div>
}
上記のコードは機能しません。アイデアを伝えるのはそこにある。パーシャルはセクションをサポートしていないので、私の理解から、パーシャルビューは機能しません。私の選択肢は何ですか?
ビューパーシャルにデータを渡す必要がある場合は、モデルを介して渡します。 – mason
@mason - データを渡す以上のことをしようとしています。バナー内の特定の画面に対してカスタマイズされた表示をしたいのです。私は単純な例を提供しました。しかし、私は実際にはもっと様式化された何かをしたいと思っています。 – user687554