Сессии и выступления в asp.net MVC - PullRequest
1 голос
/ 07 октября 2010

Правда ли, что asp.net MVC не использует SESSIONS [Sessions varibale] и, следовательно, там его производительность лучше, чем у веб-формы asp.net.если это не так, то почему скорость asp.net MVC выше, чем у веб-формы asp.net?

Ответы [ 3 ]

10 голосов
/ 07 октября 2010

Нет, это не правда.ASP.NET MVC построен на основе ASP.NET, поэтому у вас есть те же параметры хранения, что и в Application, Session, Cache, ... Решение о том, хочет ли он использовать сеанс, решать разработчику.Поэтому, если вы используете Session в приложении ASP.NET MVC, производительность будет такой же, как если бы вы использовали Session в классическом приложении WebForms.

6 голосов
/ 07 октября 2010

На самом деле он не использует VIEWSTATE, поскольку данные состояния просмотра не передаются туда и обратно между клиентом и сервером, страницы MVC загружаются немного быстрее.

1 голос
/ 07 октября 2010

ASP.NET MVC использует Session всякий раз, когда вы используете TempData. Тем не менее, сессия не является плохой по производительности. Проблемы возникают при масштабировании более чем на одну машину, что означает, что вам необходимо учитывать это при определении вашей архитектуры. Если вы решите использовать сессию, никогда не обращайтесь к ней напрямую со своих контроллеров. Всегда предоставляйте абстракцию, чтобы учесть различные реализации для масштабируемости.

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

Для меня главным преимуществом MVC является поддержка модульного тестирования. Вы также получаете намного больший контроль над разметкой, , если вам требуется . Но при выборе между WebForms или MVC вам не нужно учитывать производительность.

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