かみそりのヘルパーでこれを解決することが可能です。ちょっとエレガントでハッキーですが、それは私の仕事でした。あなたはヘルパーを定義する親ビューでそう
:あなたは、部分的にレンダリングするとき
@helper HtmlYouWantRenderedInAPartialView()
{
<blink>Attention!</blink>
}
はその後、あなたはそれにこのヘルパーを渡し
@Html.Partial("somePartial", new ViewDataDictionary { { "OptionalSection1", (Func<HelperResult>)(HtmlYouWantRenderedInAPartialView) } })
そして、部分図の内側に、あなたは次のようにこのヘルパーを呼び出しますしたがって
<div>@ViewData.RenderHelper("OptionalSection1")</div>
最後に、この「拡張」メソッドを使用して、「呼び出し元」ファイルを簡素化する必要がありますRT
public static HelperResult RenderHelper(this ViewDataDictionary<dynamic> viewDataDictionary, string helperName)
{
Func<HelperResult> helper = viewDataDictionary[helperName] as Func<HelperResult>;
if (helper != null)
{
return helper();
}
return null;
}
だから、全体のポイントは、このヘルパーのデリゲートを渡すことで、子ビューがそれを呼び出した後、ときにそれらを配置したい場所、内容がレンダリングされます。
子ビューの最終結果は、この
<div><blink>Attention!</blink></div>
任意の回避策のように見えるのでしょうか?私はレイアウト - >ページ - >パーシャルを持っています。スクリプト/レイアウトが参照され、その部分があるときに頭に読み込まれる必要があります。これを行うための任意の非愚かな方法?とにかくこの制限のポイントは何ですか? – Shimmy
@ Shimmyあなたはレイアウトデータによって参照されるべきものを指定するViewDataにある種のデータ構造を入れてみることができます。 – marcind
ありがとうございます。ちょうどいいソリューションのように見える[カセット](http://getcassette.net/)について読んでいます。ありがとうございました。 – Shimmy