В чем разница между ASP.NET MVC 6 и ASP.NET Core 1.0 и причина базовой структуры?
Я понимаю, что ASP.NET Core - это модульная структура, которая объединяет такие технологии, как ASP.NET MVC и Web API, в единую модель программирования.
Но одной из особенностей ASP.NET MVC 6 было внедрение слияния MVC 6 и Web API вместе со следующими функциями. Инъекция зависимостей встроена и является частью MVC.
1) Рядом - разверните среду выполнения и фреймворк вместе с вашим приложением
2) Все, что поставляется с NuGet, включая саму среду выполнения.NET.
3) Новая структура проекта на основе JSON.
4) Нет необходимости перекомпилировать для каждого изменения. Просто нажмите сохранить и обновить браузер.
5) Компиляция сделана с новым компилятором реального времени Roslyn.
Итак, почему существуют 2 автономные платформы ASP.NET? поскольку базовая структура уже существует, не будет ли использоваться MVC 6 в дальнейшем?
было бы здорово, если кто-то может уточнить.
2 ответа
MVC 6 был частью ASP.NET 5, но из-за некоторых серьезных изменений в кодовой базе они решили изменить его имя с ASP.NET 5 на ASP.NET Core.
Вы можете прочитать здесь: http://www.hanselman.com/blog/ASPNET5IsDeadIntroducingASPNETCore10AndNETCore10.aspx
Основное различие между ASP.NET
а также ASP.NET Core
как описано ниже...
- Независимые от платформы особенности
ASP.NET Core
обеспечивает хостинг на нескольких платформах, таких как Linux или Mac или Windows хостинг (кроссплатформенный). - Введена новая облегченная версия сборок с независимыми фреймворками.
- Готов к кроссплатформенному облачному хостингу.
- Каркасы полностью переписаны (и до сих пор строятся)
- Структура проекта по умолчанию проекта была обновлена с помощью конфигураций скриптов типа.
- Улучшены новые функции безопасности и инверсии зависимостей.
Пожалуйста, посетите .NET Core и ASP.NET Core для более подробной информации
Основной причиной, лежащей в основе ядра, является инверсия зависимостей. Поскольку его каркас полностью переписан таким образом, что сборки высокого уровня полностью отделены от опорных сборок низкого уровня.
Как я вижу, ваш вопрос состоит из двух частей. Первая часть является более технической, что, как мне кажется, было хорошо объяснено в других ответах, поэтому позвольте мне попытаться объяснить вторую часть, которая является причиной новой основной структуры.net.
Большинство веб-приложений работает в Linux, и большая часть веб-сайтов построена на языках с открытым исходным кодом, таких как php, python, ruby. Также вы заметите некоторые самые популярные приложения CMS, такие как WordPress, построенные на php, которые, очевидно, предпочтительнее размещать в Linux. С другой стороны, Microsoft хорошо известна своим коммерческим платным программным обеспечением и, конечно же, с закрытым исходным кодом. В мире технологий Microsoft не хватало доверия со стороны любителей открытого исходного кода из-за собственного дизайна с закрытым исходным кодом. Итак, наконец, они также хотят отобрать долю рынка у сообщества открытого исходного кода. И не было другого пути, кроме как перестроить ядро .net под дизайн с открытым исходным кодом. Кроме того, помимо всего этого, Microsoft пытается продемонстрировать любовь к сообществу разработчиков ПО с открытым исходным кодом, чтобы завоевать доверие, в рамках чего они приобрели github, который является самым популярным инструментом для сообщества разработчиков с открытым исходным кодом.Итак, в основном Microsoft пытается расширить свой бизнес, участвуя в мире программного обеспечения с открытым исходным кодом, и ядро .net является наиболее важным для привлечения разработчиков. Это ключевая причина, по которой, на мой взгляд, стоит основная структура.