ASP.NET MVC против WebForms - простой вопрос - PullRequest
0 голосов
/ 24 мая 2010

Мне интересно одно: как мы знаем, шаблон MVC не имеет состояния (он не использует ViewState, поэтому мы используем только элементы управления HTML), но если мы будем использовать их и в WebForms, он будетстать без гражданства тоже?Итак, делая это, мы приближаемся к шаблону MVC?

Ответы [ 7 ]

5 голосов
/ 25 мая 2010

Полагаю, вы приближаетесь к одному из аспектов MVC, но это все равно разница между днем ​​и ночью.

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

Если вы хотите это сделать, просто используйте ASP.NET MVC.

3 голосов
/ 25 мая 2010

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

Ничто не мешает вам создавать свои собственные скрытые поля в MVC, чтобы сделать его «своего рода с сохранением состояния».

1 голос
/ 25 мая 2010

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

.NET пытается сделать это «проще» с помощью ViewState и Session, но MVC и веб-формы не сохраняют состояния.

1 голос
/ 25 мая 2010

Нет, мы не используем элементы управления HTML в ASP.NET MVC.Мы используем HTML-помощники.Есть большая разница.

0 голосов
/ 25 мая 2010

Как и в любых моделях программного обеспечения, между фундаментальными принципами необязательно существует четкая граница. В течение многих лет я разрабатывал приложения со свободными реализациями MVC в WebForms.

Отсутствие псевдосостояния (я не буду отдавать WebForms кредит за фактическое состояние, сеть является без состояний) в MVC является ряд аспектов его реализации в ASP.NET, не часть фактического шаблона MVC.

Помимо всего этого, я понимаю, почему люди пропускают веб-элементы управления и хотят использовать их в MVC. Но почему вы хотите использовать HTML-помощники в WebForms? Если вы готовы сделать этот тип основы, то вам, вероятно, следует использовать MVC.

0 голосов
/ 25 мая 2010

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

0 голосов
/ 25 мая 2010

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

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