ASP.NET веб-формы имеют большой вес и оставляют на ваших веб-страницах огромное количество материала, как в html / javascript, так и в сериализованном режиме просмотра. Я помню мой первый веб-сайт ASP.NET, в результате которого GC взорвался из-за того, что все недолговечные объекты были повторно гидратированы из этого ужасного состояния. О, когда я был молод и наивен (то есть 2 года назад) ... Вы должны очень хорошо понимать веб-формы, чтобы создавать из них масштабируемые веб-сайты. Возможный? Определенно. Легко? Не.
ASP.NET MVC сложнее кодировать изначально , но SO гораздо проще в разработке, чем веб-формы. Самое сложное для изучения: 1) условные обозначения, называемые «волшебными строками», 2) HTML + встроенный код, называемый ASP, и 3) HTML-формы.
С MVC вы не можете сойти с ума от государственного кошмара, который так часто встречается в разработке веб-форм, а это означает, что ваши веб-страницы очень тонкие. Это также означает, что вы должны кодировать свое состояние немного умнее. Код также НАМНОГО проще и масштабируется НАМНОГО лучше, чем традиционные веб-формы, imho.
Кроме того, тестирование с ASP.NET практически невозможно из-за жестко закодированных и немодируемых зависимостей, встроенных в платформу. ASP.NET MVC заменил все это членами System.Web.Abstractions, которые являются поддельными обертками для этих плохо спроектированных и непроверяемых объектов.
Беги, не ходи, к MVC.
Для очевидных, если вы используете фреймворк, который находится поверх фреймворка ASP.NET, такой как MVC или любой другой, который вы написали или написал кто-то еще, ЯВНО некоторые из этих замечаний не применяются
Если, с другой стороны, вы кодируете, как это делал ранний человек, для модели веб-форм ASP.NET (например, Response.Write () в Page_Load), мои комментарии применяются.
Можете ли вы написать код, который можно тестировать на ASP.NET? Конечно. Можете ли вы сделать это без включения специального кода тестирования, который вы или кто-то другой написал? Конечно. Если у вас есть TypeMock.