我在 Ektron 8.0 中工作。
我在设置中创建了一个智能表单配置,我为文件夹分配了这个特定的智能表单配置并创建了一个智能表单内容。现在我正在尝试以编程方式访问智能表单内容。我将“XML”数据作为 content.Html 属性获取。有什么方法可以获取与 smartform 内容相对应的 HTML 数据,而不是这些 XML 数据?
我在 Ektron 8.0 中工作。
我在设置中创建了一个智能表单配置,我为文件夹分配了这个特定的智能表单配置并创建了一个智能表单内容。现在我正在尝试以编程方式访问智能表单内容。我将“XML”数据作为 content.Html 属性获取。有什么方法可以获取与 smartform 内容相对应的 HTML 数据,而不是这些 XML 数据?
有几种方法可以做到这一点,这里有两种。
XSLT:
<CMS:ContentBlock runat="server" Visible="true" DisplayXslt="/xmlfiles/SmartForm.xslt" DefaultContentID="23" />
SmartForm.xslt 文件将 xml 转换为格式化的 html。
使用 XSD 在后面的代码中访问 SmartForm 内容。
这篇文章解释了这个过程。 http://developer.ektron.com/Templates/KBDetail.aspx?id=603
您需要获取 .xsd 文件的副本并使用它为您的智能表单创建对象定义。
使用 xsd.exe 工具创建一个类。该命令如下所示。
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\xsd.exe" "C:\inetpub\site\xsd\SmartFormContet.xsd" /classes /language:CS /namespace:SmartForm.SmartFormContent
这将生成一个名为 SmartFormContet.cs 的类文件
复制此文件并粘贴到页面后面的代码中。
从 Content.Html 属性反序列化 XML。