На моей текущей работе у нас есть система CMS, основанная на .NET / SQL Server. Настраивая пару модулей для внутреннего использования, я был немного удивлен, увидев, что вместо API-интерфейсов, возвращающих данные через типичный набор результатов, привязанный к элементу управления DataGrid / DataList / Repeater, API-интерфейсы возвращают XML node / collection, который затем был передан в преобразование XSLT и таким образом отображен на странице.
Каковы преимущества использования подобной модели?





Использование преобразований XSLT позволит вам использовать макет и форматирование, отличные от стандартных элементов управления сеткой .Net. Некоторые люди не одобряют использование сеток .Net, потому что они могут включать больше HTML, чем необходимо, и потому, что при неосторожном управлении они могут раздувать ViewState.
Недавно было обсуждение здесь о том, что сетки .Net являются раздутым ПО (но разработчики все равно их используют).
Выводимые страницы могут быть любого типа, например html, php и т. д.
Настроив источник данных и xml, которые просто преобразует страница, вы также мгновенно создали простую «веб-службу», которую может использовать другое программное обеспечение. Например, было бы тривиально превратить эту сетку в RSS-канал или написать программу для периодической очистки этих данных и отправки более срочного предупреждения.
Метод XSLT очень похож на MVC, модульное тестирование, удобство для отдельных задач, в то время как ASP.NET хорошо контролирует ... нет.
предостережение: я отвергаю предположение, что MS может писать лучше html / css / js, чем я. Элементы управления ASP.NET - неуклюжая мерзость.