2013-03-05 2 views
2

Я работаю в Ektron 8.0.Получение HTML-информации о смарт-форме в Ektron

Я создал конфигурацию смарт-форм в настройках, я назначил эту конфигурацию смарт-формы для a Папка и создал содержимое смарт-формы. Теперь я пытаюсь получить доступ к содержимому Smart Form программно. Я получаю данные «XML» как свойство content.Html. Есть ли способ получить данные HTML, соответствующие содержимому smartform, а не эти данные XML?

+0

Содержимое HTML введенных пользователем данных или разметка HTML пользовательского интерфейса SmarForm, который используется редактором содержимого? –

+0

HTML-код смарт-формы, который включает в себя конфигурационный UI + введенный пользователем Вход – Bisileesh

+0

Из любопытства, каков ваш прецедент, где вам нужно это сделать? –

ответ

2

Существует несколько способов, вот два.

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

Скопируйте этот файл и вставить в код позади страницы.

Уничтожьте XML из свойства Content.Html.

+0

Спасибо за ответ, я ищу обобщенный подход, который будет работать для любого контента smartform без создания класса для каждого контента smartform. – Bisileesh

+0

Я бы использовал xslt. Это действительно просто, когда вы обнимаете его. Если вы разместите копию smartform xml и желаемого xsl, я могу привести вам краткий пример. – whoacowboy

Смежные вопросы