#xml #user-interface #asp.net-mvc-3 #configuration
#xml #пользовательский интерфейс #asp.net-mvc-3 #конфигурация
Вопрос:
Я заинтересован в создании настраиваемого ASP.NET Пользовательское приложение MVC 3, под которым я подразумеваю настройку всех свойств элемента пользовательского интерфейса и атрибутов во всей конфигурации XML (которые можно редактировать с помощью какого-либо другого пользовательского интерфейса). Я искал в Google некоторую платформу, шаблон или общий подход, который приводит к этой цели, и я не нашел многого.
- Мой вопрос заключается в том, как читать XML и отображать HTML-элементы, выполняется ли это через JavaScript (jQuery)?
- Какая стратегия именования и вложенности html является наилучшей? ( Я знаю, что это не настоящий вопрос, но в обстоятельствах, когда для упрощения преобразования элементов необходим некоторый шаблон)
- Есть ли какой-либо код, который я могу повторно использовать для этой цели?
Спасибо.
Ответ №1:
Трудно точно сказать, что вы ищете.
Если XML — это данные, которые вы хотите отобразить, некоторые параметры:
- Используйте XSLT для преобразования XML в Html
- В зависимости от ваших целевых пользователей, вы даже можете позволить браузеру делать это, назначив XSLT в XML, который вы передаете браузеру. Возврат XML непосредственно в браузер вместо HTML или ViewResult.
- Другой способ — применить преобразование в методе action и вернуть его в виде строки (вместо возврата ViewResult).
- Другой альтернативой является реализация XmlActionResult. Вы обнаружите, что реализация результатов действий проста в asp.net MVC. На вашем контроллере вы возвращаете XmlActionResult с данными, которые хотите отобразить. В XmlActionResult применяется преобразование XSLT.
- Используйте пользовательский код для преобразования XML в Html. Как и в случае преобразования XSLT, вы можете сделать это либо непосредственно в методе action (путем вызова общего метода, который вы определяете в другом месте), либо путем определения результата вашего собственного действия.
Если XML — это не данные, а только то, как вы хотите отобразить все, что находится в модели:
- Вы в значительной степени определяете ViewEngine. Вы хотите определить свое представление в xml вместо aspx, razor или любого другого языка. Если вы создадите свой собственный, он будет ограничен, если вы используете сторонний (если вы его найдете), вам придется иметь дело с языком, на котором он определен.
- Вы можете комбинировать динамические данные с asp.net MVC. Я не уверен, что элемент управления может быть использован в asp.net Вид MVC, но стоит попробовать поискать о нем.
- Вы можете использовать методы DisplayFor в представлении и определять шаблоны для всех простых типов. Объедините это с некоторыми определяемыми вами помощниками, и вы сможете применить любую конфигурацию, которая у вас есть, к полям (даже если это ничего не показывает для него).
Ответ №2:
Вы можете обратиться к блогу, основанному на реализации механизма просмотра XSLT
MVCDynamicForms — хороший вариант, который вы можете рассмотреть
XSLTViewEngine также можно рассмотреть, если вас интересует XML для преобразования в HTML вместе с XSLT.