![](/img/trans.png)
[英]Can I know what page is in my master page's ContentPlaceHolder?
[英]Can I populate a ContentPlaceHolder in a master page from within a Razor Partial View?
我正在使用mvc3中的典型内置视图引擎(它有适当的名称吗?)用于视图和母版页,它包括.aspx页面上的Razor局部视图。 在母版页中,有一个ID为"ScriptContent"
的ContentPlaceHolder
。
我希望能够在Razor局部视图中填充ContentPlaceHolder
,但我不认为这是可能的。 有谁知道这是否可能以及我将如何做到这一点?
我已经尝试过像部分渲染它,但这不起作用。
@section ScriptContent {
... content ...
}
这将是非常困难的,以至于我建议找到另一种方式:(。我希望它更容易,但这些是将新视图引擎集成到现有遗留系统中的复杂性。
如果你真的想尝试一下,为了给你一个良好的开端:你可能需要为你的Razor内容页面创建一个继承自WebViewPage的自定义基类,覆盖一些方法(说实话,我对这个方面不太熟悉)因此,您需要调试以跟随管道),以便不将Layout属性视为布局页面的路径,而是将其视为母版页。 然后你需要实例化母版页并以某种方式转换Sections(由Razor解析器转换为对DefineSection的调用,并且应该存储在基类的某个地方的Dictionary中)到Content控件中并将它们填入母版页。
如果到目前为止我没有想到你的想法,你可能只能把它拉下来,但说实话,我会避免它。
PS我们将旧视图引擎称为“ASPX”,基于其文件扩展名;)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.