Я пришел из JavaEE и изучаю, какие веб-фреймворки существуют в Java и .Net.Что касается Java, я нашел этот разговор Мэттом Рейблом .
Одна из классификаций, которые он делает среди фреймворков, заключается в том, что некоторые из них основаны на действиях, а некоторые - на компонентах.Первые не сохраняют состояния и фокусируются на действиях, выполняемых для каждого запроса, и создании отчета, а вторые - на состоянии и сохраняют представление своих компонентов веб-интерфейса на стороне сервера.
Как и ожидалось, компонент-основанные на веб-фреймворках обычно поставляются со своими собственными компонентами или библиотеками компонентов сторонних производителей (в дополнение к своим собственным компонентам JSF имеет Richfaces, Icefaces, ... и GWT имеет ExtGWT, SmartGWT, ...).Чтобы обеспечить богатые интерфейсы с основанными на действии средами, разработчик должен использовать либо библиотеку компонентов JS, либо Flex и т. Д.
Поскольку преимущества и недостатки каждой из этих категорий имеют для меня смысл, я бы хотелзнать, применима ли эта классификация и к .Net-фреймворкам.Насколько я мог найти, и ASP.Net MVC, и веб-формы ASP.Net не имеют состояния, но у веб-форм есть механизм Viewstate, который можно настроить для сохранения и извлечения состояния из скрытых полей, сеанса и т. Д. Однако я мог бы найтинет серверного представления компонентов.
Итак, ASP.Net MVC и ASP.Net Webforms основаны на компонентах или действиях?