Посмотрел на view engine на базе XSLT, который предлагается в проекте MVCContrib. Ну это же тихий ужас! Понятно, почему люди не могут поверить, что XSLT — это хорошо. Во-первых, этот движок требует данных в виде XML-документа. Нельзя просто взять готовый контроллер и модель, и прикрутить к ним показывалку на базе XSLT. Нет, надо всю генерацию данных переделать. Ясно, что никто и пробовать не будет. Во-вторых, в комплекте нет ни одного примера сайта с XSLT-шным движком. То есть не только сам не попробуешь, но на чужие эксперименты посмотреть не судьба. Какой-то заговор против XSLT, ей-богу.
Как надо было делать. Основное требование, как я его себе вижу, в том, чтобы XSLT view engine работал ровно с той же моделью, что и стандартный движок. Добиться этого очень просто, надо всего лишь заюзать ObjectXPathNavigator. Возможно, придется написать какую-нибудь простенькую NodePolicy. А может и не придется, надо посмотреть на все это поближе. Всех дел, как мне кажется — на пару дней.
Кстати, не смотрите, что релиз навигатора был давно. Беда с ним в том, что он все работает и работает. Вообще ничего править не приходится. Вот и подзаглох слегка.
Еще в поставке увидел движок NHaml. Это вообще редкостная дичь. Надо же было придумать, что HTML markup надо писать с процентиком спереди, а код — просто так. Вот примерчик:
%ul
- foreach (var m in ViewData.Model)
%li =m.Title
Представьте себе процедуру перевода готовой верстки в это вот... Зато мы видим доказательство существования жизни на марсе. :)
Posted
Feb 26 2009, 10:39 AM
by
Andrew Mayorov