Подтвердить что ты не робот

Пользователи ASP.NET MVC - вы пропускаете что-либо из WebForms?

Есть много статей и обсуждений о различиях между ASP.NET WebForms и ASP.NET MVC, которые сравнивают относительные достоинства двух фреймворков.

У меня есть другой вопрос для тех, у кого есть опыт использования WebForms, который с тех пор перемещен в MVC:

Что такое номер один, что у WebForms было, что MVC не делает, что вы действительно пропустите?

Изменить

Никто не упомянул элементы проверки WebForms. Теперь я работаю над некоторым кодом, который имеет несколько зависимых правил проверки, и проверка на стороне клиента для них медленная.

4b9b3361

Ответ 1

Как человек ASP/PHP ASP, я рискнул в мире веб-форм около 5 лет назад. После того, как вручную записывать такие вещи, как табличные сетки, календари и т.д., На языках сценариев, казалось, что веб-формы будут огромной помощью. Это было... это до тех пор, пока вам не понадобится даже небольшая настройка вне чередующихся цветов строк и тому подобное. Да, у вас может быть сетка с несколькими движениями с перетаскиванием. Но настройка даже того, что казалось бы простой, может превратиться в часы пыток и исследований.

Я также думаю, что многие примеры, приведенные в .NET в Интернете, упрощены для того, чтобы заставить веб-формы выглядеть "легко". Уверен, что вы можете получить это gridview, чтобы показать только 10 записей таблицы 100 000 записей, но понимаете ли вы, что ВСЕ записи записываются в память по умолчанию? В качестве примера чрезмерной сложности устранения этой проблемы я потратил некоторое время на создание gridview grid, которое загружает только фрагменты записей, но это не сработает. После часа исследования я обнаружил, что вам нужно удалить дополнительную собственность, которую IDE вставляет в код. Не весело, когда такие глупые вещи заставляют вас позади.

И на каждом шагу это происходит.

Даже не заставляйте меня запускать в viewstate.

Но затем облака разошлись, и нам был передан .NET MVC. Теперь это та структура. Если вы являетесь веб-разработчиком, вы должны знать, что происходит, когда кто-то делает запрос на ваш веб-сервер. Абстракция и слой крутизны, которые накладываются поверх этого, являются плохими.

По большей части, я могу разрабатывать приложения со скоростью PHP-скриптов и НАКОНЕЧНО иметь полный контроль над пользовательским интерфейсом. Что все это значит.

И в качестве дополнительного примечания: людям нужно перестать жаловаться, что они создают "суп-тег" в представлениях MVC, когда они находят, что им нужно использовать теги <% =% > и тому подобное. Перетащите изображение сетки на страницу, задайте все свойства, затем просмотрите дерьмо, которое оно дает вам. И пока вы еще не сделали этого, теперь вам нужно прикрепить события и добавить в свой код код кода, связанного с gridview. Расскажите о том, как испортить опыт кодирования. Я возьму простой цикл foreach в любое время.

Ответ 2

ничего:)

Мне очень нравится, как работает ASP.NET MVC. Я хочу контролировать свой HTML. Мне не нужны средства контроля. Мы можем получить те же функции с помощью HTML-помощников и сторонних инструментов, например. jQuery и все доступные плагины.

Вот пример того, как использовать gridview-like с сеткой jQuery на ASP.NET MVC.

Хотя Ruby on Rails - более зрелая структура, я думаю, что ASP.NET MVC находится на правильном пути.

Ответ 3

Я скучаю по gridview, простота создания в сортировке и подкачке с минимальными усилиями. Я использую функцию сетки все время и до сих пор не нашел хорошей альтернативы в mvc

Ответ 4

Ну, я что-то пропустил:

способность иметь сетку с возможностью просмотра в секундах.

Хотя это было бы не очень справедливо, так как мне также пришлось создать класс для подачи в ObjectDataSource, чтобы иметь эффективную разбивку на страницы. А также разбиение на страницы будет работать только с JavaScript, или мне придется писать код для чтения QueryString (например, & pag = 2 и т.д.) И т.д.

На самом деле... Я думаю, что не так уж много скуки.

Ответ 5

Простота отображения только одной формы на странице. Я думаю, что функциональность html-формы является неловкой и не очень интуитивной, и я думаю, что есть веская причина, по которой создатели веб-форм пытались абстрагироваться от обработки форм в веб-формах.

Ответ 6

Одно из различий, которое, я уверен, будет исправлено с течением времени, - это обширное количество справочных материалов и примеров онлайн для веб-форм в сравнении с относительно небольшим количеством для MVC. Однако можно утверждать, что многие материалы в веб-формах охватывают такие темы, как жизненный цикл страницы, который MVC больше не делает необходимым (слава богу).

Ответ 7

До сих пор ничего действительно.

Я определенно скучаю по MVC каждый день на работе, пока я смотрю на уродливый код WebForms, который я хочу уничтожить, и теперь делаю все прозрачным, чистым и красивым.

Конечно, только время покажет, действительно ли новая девушка лучше вашей старой жены.

Ответ 8

Как сумасшедший, как это звучит, я пропускаю контроль календаря. Не для datepickers или что-то вроде этого, но для планирования приложений, где вы хотите показать полнотекстовый календарь событий в стиле "месяц в секунду" или "внешний вид" с помощью выбираемых или кликабельных ссылок, которые вы вводите через событие day render.

Если кто-нибудь знает альтернативу MVC, пожалуйста, поделитесь! Роллинг в этом случае выполним, но как бы боль.

Ответ 9

Viewstate - это то, о чем я пропустил - пока не запомню проблемы, которые он вызывает.

Затем я наклоняюсь и искал другие подходы (более умная привязка модели, ajax и т.д.), которая обычно оказывается лучше (но медленнее найти и реализовать).

Ответ 10

Главное, что я пропустил, это документация. WebForms, из-за его относительной зрелости, имеет много официальной документации, а также множество сторонних примеров и доступных фрагментов. Тем не менее, это улучшает весь элемент и, поскольку MVC набирает обороты, я надеюсь, что он будет на одном уровне.

Ответ 11

Ничего.

WebForms делают это автоматически, но часто мне приходится взламывать его в соответствии с моими потребностями. MVC позволил мне делать то, что я хочу, и я могу взломать его, чтобы все было сделано лучше/быстрее.

Я люблю контролировать выход и предпочитаю чистый, легкий стиль.

Ответ 12

Кэширование вывода на самом деле не реализовано в ASP.NET MVC (начиная с версии 2). Есть трюки, чтобы заставить его работать, например с помощью веб-элементов управления с директивой OutputCache или с помощью WriteSubstitution, но все эти трюки каким-то образом противоречат природе MVC. Кэширование вывода для чего-либо, кроме целых методов действий, очень сложно получить в ASP.NET MVC и всегда вызывает огромный технический долг. Поскольку выходное кэширование, особенно в новых версиях IIS, невероятно отличается от кэширования на уровне данных, это позор.

Ответ 13

простота в перемещении элементов управления. возможно, увидит некоторые из них в ближайшем будущем, возможно, в mvc4

Ответ 14

Ссылка: - http://www.codeproject.com/Articles/808297/Things-you-will-miss-in-ASP-NET-MVC-as-an-ASP-NET

Я не скажу, что я скучаю, потому что все изменения происходят навсегда. Но да, я пропустил бы ниже

  • Прекрасный сервер контролирует, кто просто дает результат в мигающем режиме.
  • Задний файл кода. Двойной щелчок и переход к Коду по какой-то причине сделали меня лучше.
  • Просмотр магии.
  • Теперь мне нужно попасть в головную боль POST и GET.

enter image description here