Планы на будущее для веб-приложения asp.net mvc 5.2 с выпуском asp.net mvc6 (vnext)

Мне нужно получить какие-либо идеи о том, как я должен управлять нашим предыдущим веб-приложением asp.net MVC 5.2. Теперь я использую asp.net mvc-5.2 с сущностью framework 6.0. и я хочу начать этап 2 для некоторых из этих проектов. так должен ли я рассмотреть вопрос об обновлении моего mvc 5.2, чтобы сначала использовать mvc6 (vnext)? и будут ли планы миграции? второй вопрос, когда ожидается релиз vnext? или он был официально выпущен?

третий вопрос, смогу ли я создать проект vnext внутри VS 2012?


person john Gu    schedule 18.06.2015    source источник


Ответы (1)


  1. Я бы просто рекомендовал следовать стандартной передовой практике многоуровневой архитектуры и сохранять логику, связанную с такими вещами, как запросы к базе данных в библиотеках классов. MVC 6 значительно отличается от предыдущих версий, поэтому миграция непроста. В основном вам нужно будет начать совершенно новый проект и перенести соответствующий код, где вы можете, и потратить немало времени на преобразование кода. Например, дочерние действия исчезли и были заменены компонентами представления. Вам нужно будет просмотреть все дочерние действия, которые вы используете в настоящее время, и создать из них компоненты представления. Как я уже сказал, убедитесь, что ваш текущий проект MVC является как можно более тонким (путем разложения кода на библиотеки классов и т. д.), что поможет сократить объем кода, который вам нужно переместить/изменить.

  2. Насколько мне известно, дата выпуска не установлена, но, по крайней мере, на фазах альфа- и бета-тестирования Visual Studio 2015 и ASP.NET 5/MVC 6 требуется Windows 10, поэтому не будет официальный релиз возможен до тех пор, пока Windows 10 не станет общедоступной. Тем не менее, Visual Studio 2015 достиг стадии релиза, поэтому я бы сказал, что он определенно близок к запуску одновременно с Windows 10 или вскоре после него.

  3. Вроде ответил на это в пункте 2, но для ASP.NET 5/MVC 6 потребуется VS2015. Насколько мне известно, добавлять поддержку младших версий не планируется. Во многом это связано с Rosyln, новым компилятором .NET. Попытка загрузить предыдущие версии VS с поддержкой совершенно нового механизма компиляции/синтаксиса была бы чудовищной задачей. Тем не менее, VS теперь использует модель подписки MSDN для многих версий, и пока вы являетесь текущим подписчиком, вы всегда можете загрузить последнюю версию бесплатно. Если вы не являетесь подписчиком MSDN, вы все равно можете бесплатно загрузить версию сообщества VS 2015. В нем отсутствуют многие более продвинутые функции VS, но его вполне достаточно для веб-разработки.

person Chris Pratt    schedule 18.06.2015
comment
спасибо за ваш полезный ответ, так что, если в настоящее время мои проекты хорошо работают на mvc 5.2, есть ли какая-то причина, по которой я не должен продолжать использовать asp.net mvc 5.2 в следующие пару лет? что ты думаешь ? если вы столкнулись с подобной ситуацией? - person john Gu; 19.06.2015
comment
Преимущества MVC 6 огромны, но нет никаких технических причин, по которым вы не можете продолжать использовать MVC 5 в обозримом будущем. На самом деле я нахожусь в похожей ситуации, приближаясь к запуску долго разрабатываемого приложения MVC 5. Я надеюсь перенести его на MVC 6 в какой-то момент в будущем, я планирую сначала осесть пыль на MVC 6. Сдвиг драматический, почти отражающий появление MVC 1.0. Я полностью ожидаю, что код немного подпрыгнет, пока не созреет. - person Chris Pratt; 19.06.2015
comment
поэтому процесс миграции будет в основном ручным процессом преобразования любых более недоступных компонентов в asp.net mvc6 по сравнению с mvc5. и из моего чтения mvc6 в основном объединяет asp.net mvc5 и asp.net web api вместе... Я ожидаю, что мой код структуры сущности (класс модели) будет одинаковым в обоих, но контроллер и представление потребуют основных усилий для миграция, но я также перечисляю миграцию с mvc5 на mvc 6 в будущем, но я не буду придавать ей наивысший приоритет в текущем году... - person john Gu; 19.06.2015