В чем недостаток использования asp.net MVC? - PullRequest
6 голосов
/ 06 февраля 2009

Есть ли какой-либо недостаток, с которым вы сталкиваетесь при использовании asp.net MVC?

EDIT
Если да, можете ли вы перечислить некоторые из этих недостатков,

Ответы [ 9 ]

6 голосов
/ 06 февраля 2009

С помощью WebForms у вас есть множество предварительно созданных элементов управления пользовательского интерфейса, таких как сетки, графические инструменты и т. Д. Существует целая индустрия элементов управления RAD.

К сожалению, с ASP.NET MVC многие из этих вещей еще не совсем там.

4 голосов
/ 06 февраля 2009

Самым большим недостатком является то, что вам, вероятно, придется использовать JavaScript / AJAX для создания более сложных форм. Например, если у вас есть целая куча виджетов (скажем, сеток данных, дополнительных сторонних форм и т. Д.), Которые не являются непосредственно частью текущего представления, управление состоянием является проблемой.

В ASP.NET WebForms, представление состояния автоматически обрабатывает это, так что вы можете иметь несколько независимых элементов управления, отправляющих и запускающих события, не путая что-либо еще на странице.

В ASP.NET MVC вам нужно справиться со всем этим самостоятельно, и самый простой способ - просто переместить вещи на сторону браузера.

С другой стороны, после того, как вы все отладите, это может привести к более приятному взаимодействию с пользователем.

3 голосов
/ 06 февраля 2009

Это действительно зависит от типа проекта. Некоторым нравится MVC из-за того, что SEO извлекает выгоду из чистых URL-адресов и позволяет пользователям интеллектуально «взламывать» URL-адреса, делая умные предположения URL-адресов. MVC идет с расходом на то, что вы потеряете веб-элементы управления, поэтому ASP.NET AJAX и сетка перетаскивания из вашей библиотеки пользовательского интерфейса отсутствуют.

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

http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx http://msdn.microsoft.com/en-us/library/ms972974.aspx

Так что, поскольку «недостаток» в использовании MVC, он может быть более личным,

  • Хотите ли вы пройти курс обучения при выполнении MVC?
  • Вы полагаетесь на средства управления? Можете ли вы написать то же самое с помощью старого доброго HTML, CSS?
  • Может быть, вы теряете время на MVC, когда лучшая часть вашего проекта выиграет от времени написания кода?
  • Если все, на что вы обращаете внимание - это SEO, является ли переписывание URL лучшим подходом для ваших нужд?

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

3 голосов
/ 06 февраля 2009

Дополнительная информация здесь: Должен ли я перейти на ASP.NET MVC?

2 голосов
/ 06 февраля 2009

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

Однако я могу дать вам очень хорошее преимущество: если вы еще этого не сделали, вы, наконец, изучите основы HTML / CSS и HTTP, которые необходимы для любой серьезной веб-разработки, а не просто перетаскивания. -пропадание вещей в редакторе.

1 голос
/ 02 марта 2016
  • Высокая сложность при разработке приложений с использованием этого шаблон.
  • Не подходит для небольших применений, которые оказывают неблагоприятное воздействие на производительность и дизайн приложения.
  • С точки зрения сервлета и JSP, оба часто содержат бизнес-логику и уровень представления.
  • Изолированный процесс разработки авторами пользовательского интерфейса, бизнес-логика Авторы и авторы контролеров могут привести к задержке разработка модулей.
  • Разработчики не могут полностью игнорировать вид модели, даже если они разъединены. Если модель подвергается частым изменениям, мнения может быть заполнен запросами на обновление. Виды, такие как графические дисплеи может занять некоторое время, чтобы сделать. В результате вид может отставать запросы на обновление. REF: http://www.careerride.com/MVC-disadvantages.aspx
1 голос
/ 06 февраля 2009

ASP.NET требует маршрутизации IIS7 (т. Е. Windows Server 2008 или Vista). Вы можете запустить его на IIS6 под Server 2003, но потеряете маршрутизацию без расширения.

1 голос
/ 06 февраля 2009

Такие вещи, как состояние управления (текст в полях ввода) требуют ручной обработки, сравнивают с веб-формами ... при условии, что вы используете его "правильно".

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

(я имею в виду, что вы МОЖЕТЕ выполнить большинство обычных вещей asp.net внутри приложения mvc, но если вы делаете это широко, вам, вероятно, следует просто запустить веб-формы.)

0 голосов
/ 08 сентября 2011
  1. Для сайтов ASP.NET MVC требуется в среднем в 10 раз больше времени, чем для традиционных сайтов ASP.NET.
  2. Он не использует мощные элементы управления asp.net.

  3. Код не читается. Если вас заставят добавить некоторые улучшения на сайт, разработанный кем-то другим, вы сойдете с ума ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...