Любой, кто использует новую функцию страниц CSHTML, обнаруживает, что предпочитает этот новый синтаксис механизма просмотра существующему ASP. NET MVC движок представления по умолчанию или через веб-формы, и если да, то почему? А как насчет CSHTML дает вам преимущество перед MVC или веб-формами, или наоборот?
Просто любопытно услышать мнение людей об этом.
Одно из преимуществ заключается в том, что представления Razor могут отображаться внутри модульных тестов, что было нелегко сделать с помощью предыдущего средства визуализации ASP.Net.
Из объявления ScottGu это указано как одна из целей проектирования:
Unit Testable: Новая реализация механизма представления будет поддерживать возможность модульного тестирования представлений (без необходимости использования контроллера или веб-сервер и может быть размещен в любом проекте модульного тестирования - специального домена приложения не требуется).
Самым большим преимуществом является то, что код стал более кратким. Редактор VS также будет иметь поддержку IntelliSense, которой нет у некоторых других механизмов просмотра.
Декларативные помощники HTML также выглядят довольно круто, поскольку выполнение помощников HTML в коде C # напоминает мне настраиваемые элементы управления в ASP.NET. Я думаю, они взяли страницу из партиалов, но со встроенным кодом.
Итак, есть определенные преимущества перед движком просмотра asp.net.
В отличие от механизма просмотра, такого как Spark:
Spark еще более лаконичен, вы можете сохранить циклы if и внутри самого тега html. Разметка по-прежнему кажется мне более естественной.
Вы можете кодировать партиалы точно так же, как и декларативный помощник, вы просто передаете переменные партиалам, и вы получаете то же самое. Это было с искрой довольно долгое время.