Можно ли использовать стандартный WebFormViewEngine для генерации XML вместо HTML
WebFormViewEngine для генерации xml
2
Спросил
Лучший ответ:
1
WebFormViewEngine — это по сути просто движок текстовых шаболнов. Его можно использовать для генерации любого типа файла. Вот только автодополнение и валидация в Visual Studio настроены на HTML. Для генерации XML можно использовать, например, такой код:
<?xml version="1.0" encoding="utf-8" ?>
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<IEnumerable<DomainObject>>" ContentType="text/xml"%>
<%@ Import Namespace="MvcApplication.Models"%>
<root>
<%foreach(var domainObject in Model){%>
<object name="<%=domainObject.Name%>" value="<%=domainObject.Value %>"></object>
<%}%>
</root>
Здесь важный момент — код <?xml version="1.0" encoding="utf-8" ?>
должен располагаться на первой строке файла, иначе некоторые XML парсеры выдадут ошибку.
При обращении к соответствующей странице получим XML:
<root>
<object name="name1" value="value1"/>
<object name="name2" value="value2"/>
<object name="name3" value="value3"/>
</root>