【发布时间】:2011-08-22 09:29:59
【问题描述】:
如何从子布局的代码隐藏中的“参数”字段(第二个屏幕截图)获取值?
我知道当渲染(特别是子布局)添加到项目的演示详细信息时,我可以获取/设置参数,正如此处所述 (Sitecore 6 - using parameters)。
但是我想使用布局定义项中的参数字段。在属于布局定义的文件的代码隐藏中,我可以将父级转换为子布局,并且该对象也有一个 .Parameters 属性,但是这不包含我期望的值。
这是控制代码隐藏中的Page_Load方法:
protected void Page_Load(object sender, EventArgs e)
{
var sublayout = ((Sublayout)this.Parent);
string rawParameters = Attributes["sc_parameters"];
NameValueCollection parameters =
Sitecore.Web.WebUtil.ParseUrlParameters(rawParameters);
//parameters contains values from "Additional parameters (first screenshot)
//I do not know the sublayout item id or sublayout path, so how do I get
//the values from the second screenshot?
}
Doublecheck 仍然不起作用,只显示additional parameters:
【问题讨论】:
-
你真正想在这里做什么?我不明白访问这个字段的意义,因为它在所有使用渲染的项目中都是静态的。您也可以在子布局 .ascx 或 AppSetting 值中硬编码该值...或者如果您需要在内容编辑器中获取它,则在项目模板的演示详细信息的标准值中。
-
硬编码数据可能是一个解决方案。我将子布局用作另一个文件的容器,需要指定此文件路径和更多数据。
-
只是为了清楚。您希望从 SublayoutItem 而不是从项目的布局详细信息字段中设置的 Sublayout 定义中获取参数。对吗?
-
@marto:其实我两个都想要……
标签: layout parameters sitecore sitecore6