2016-07-11 4 views
2

Прежде всего, я знаю, что это очень популярная тема в настоящее время, и этот вопрос задают много и много раз.ASP.net Web Forms и Asp.net MVC Security

Но здесь я не спрашиваю, что лучше, так как очень ясно, что ASP.NET MVC лучше, чем веб-формы.

Вопрос здесь, что делать с нашей уже написанной веб-формой asp.net, она не является ни маленькой, ни большой, мы можем назвать ее среднего размера.

Действительно ли это заслуживает полной перезаписи такого приложения с помощью asp.net MVC? Главное, на чем мы концентрируемся, - это безопасность.

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

Так вот что я хочу знать: каковы преимущества безопасности тратить много времени и денег на переписывание уже написанного приложения для веб-форм с MVC?

+1

Какая защита? Для записи вы можете добавить идентификатор ASP.NET в приложение WebForms: http://www.asp.net/identity/overview/getting-started/adding-aspnet-identity-to-an-empty-or-existing- web-forms-project –

+1

На самом деле нет модели безопасности WebForms и модели безопасности MVC как таковой, ее всех asp.net, и вы можете использовать принципы безопасности в любом (например, на основе утверждений на основе auth, поставщиков членства, oauth и т. д.). Это может помочь https://msdn.microsoft.com/en-us/library/330a99hc.aspx – LDJ

ответ

1

, если мы оставим много преимуществ, которые MVC имеет над веб-формами и элементом управления, который у вас есть над приложением, и поговорите о бизнес-части. Вопрос должен быть изменен на следующие два:

  1. Вы хотите, чтобы приложение для будущего доказательства использовало гораздо более стабильную структуру, над которой разработчики могут иметь полный контроль?
  2. Вы хотите, чтобы это приложение просто запускалось, пока оно не может?

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

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

2

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

Кто сказал, что MVC «явно лучше, чем веб-формы»? Это не лучше в производительности и безопасности. Что лучше в мыслях, это дизайн.

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

Разделение логики с презентацией делает код намного проще в тестировании и намного проще разделить между дизайнерами пользовательского интерфейса и разработчиками приложений.

Все это очень важно для большинства проектов, но недостаточно для перезаписи кода, который выполняет свою работу без каких-либо серьезных проблем. Для новых проектов это определенно стоит того.

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

+0

(Кто сказал, что MVC «явно лучше, чем веб-формы»? Это не лучше ни в производительности, ни в безопасности. лучше в мышлении, это дизайн.) ... Слишком много статей ... особенно этот, который объясняет, что лучше с точки зрения времени отклика и потребления полосы пропускания: http://www.codeproject.com/articles/866143/Learn -MVC-project-in-days-Day – user6218508

+0

Просто потому, что упоминается в этой статье или других, не обязательно делать это правдой. В этой статье упоминаются вещи, которые делают производительность веб-формы более медленной, главным образом иногда сложный HTML-код, создаваемый элементами управления сервером и «viewstate». Хорошие разработчики, однако, точно знают, когда использовать серверные элементы управления, и при необходимости использовать «viewstate». Если они будут использоваться соответствующим образом, между MVC и веб-формами практически не будет различий. MVC имеет очень базовые «серверные элементы управления», поэтому разработчики, которые сосут HTML/CSS, пишут очень плохой код, который намного хуже, чем веб-формы. –

Смежные вопросы