繁体   English   中英

如何使用C#代码从Sitecore中的项目动态获取字段?

[英]How to Dynamically fetch the fields from item in Sitecore using C# code?

我有一个名为“ 页脚 ”的模板,其中包含一个RTF字段。

带富文本字段的页脚模板

使用页脚模板,我创建了一个名为“ FooterComponent ”的项目,并填充了Rich Text字段。

填充了RTF文本字段的FooterComponent项

我有一个名为“ Footer-Sublayout ”的子布局,并为此映射了Visual Studio子布局。

使用Footer-Sublayout C#代码,我必须从“ FooterComponent”中获取Rich-Text字段并将其显示在我的主页中。

您需要将页脚子布局添加到首页的演示文稿详细信息,并将其绑定到与代码中的占位符相对应的占位符。

在页脚子布局后面的代码中,您将需要从项目的富文本字段中获取值。 因此,首先通过路径或模板ID获取页脚项。 第二,读取富文本字段的值。

谢谢

为您的Footer-Sublayout提供数据源。 在您的代码中,您可以请求渲染/子布局的数据源(确切的方式可能有所不同,具体取决于站点核心版本,所使用的框架(玻璃,..),但很容易找到)。

通过使用数据源(而不是对代码中的项目进行硬编码),您可以使编辑者无需更改代码即可更改项目-或使用Sitecore的个性化/测试功能。

例如(在没有框架的v7中):

public Item GetDataSource(Control parent)
{
  var sublayout = parent as Sublayout;
  return sublayout != null ? Context.Database.GetItem(sublayout.DataSource) : null;
}

在此函数中使用控件的父级来检索数据源项。 获得项目后,可以将其附加到FieldRenderer或获取代码中的字段。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM