Миграция ASP.NET (MVC 2) в .NET 3.5 в .NET 4 #gotchas - PullRequest
2 голосов
/ 29 апреля 2010

В настоящее время у меня есть приложение ASP.NET MVC 2 в .NET 3.5, и я хочу перенести его на новый .NET 4.0 с Visual Studio 2010.

Причина в том, что всегда хорошо оставаться на вершине этих вещей - плюс мне действительно нравится новое автоматическое кодирование с <%: %> и clean web.config : -)

Так, у кого-нибудь есть опыт, которым он мог бы поделиться? В поисках гочей и лайков.

Полагаю, это также может относиться к любым проектам ASP.NET Forms.

ТИА
Charles

Ответы [ 2 ]

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

Gotcha # 1 - Изменяет пул приложений

Если ваш проект ASP.NET настроен на использование IIS, а не Cassini, во время обновления до .NET 4.0 он автоматически изменит пул приложений, который использует ваш сайт, на новый пул приложений ASP.NET v4.0. Это может повлиять на разрешения, если вы используете идентификацию пула приложений для анонимной аутентификации.

Gotcha # 2 - [ValidateInput(false)] перестает работать

Это серьезное изменение в ASP.NET 4.0. С этим вопросом можно ознакомиться * здесь .

Суть в том, что вы должны добавить <httpRuntime requestValidationMode="2.0" /> в ваш web.config.

1 голос
/ 29 апреля 2010

Я только что прошел этот процесс.Это было относительно безболезненно.Как вы упомянули, это даст вам возможность провести уборку дома с помощью файлов web.config.

Есть одна область, с которой у меня возникли проблемы.Если вы используете задачу компиляции ASP.NET после сборки в файле проекта с помощью MvcBuildViews = true, вы можете столкнуться с проблемой, если затем попытаетесь выполнить публикацию.Очевидно, что VS 2010 помещает файлы в подкаталог вашего проекта, в результате чего компилятор ASP.NET обнаруживает несколько файлов web.config.На это сообщение есть полное объяснение и ответ от Microsoft:

http://forums.asp.net/p/1547458/3797505.aspx

В остальном процесс прошел довольно гладко.

...