В чем разница между ASP.NET 5, .NET Core и ASP.NET Core 5?

Я смущен различием между этими терминами:

  • ASP.NET 5 (теперь переименован в ASP.NET Core и выпущен как 1.0, а не 5.0)
  • ASP.NET Core 5
  • .NET Core

Может кто-нибудь кратко объяснить это?

ASP.NET 5 (теперь ASP.NET Core 1.0)

Является следующее поколение ASP.NET, которое обеспечивает привычную и современную структуру для веб-и облачных сценариев. Он включает в себя следующие версии ASP.NET MVC, веб-API, веб-страниц и SignalR. Это высокопроизводительный и модульный дизайн, и он поддерживает бок о бок, чтобы сделать его бесшовным для миграции из помещения в облако. Эти продукты активно разрабатываются командой ASP.NET в сотрудничестве с сообществом разработчиков с открытым исходным кодом. Вместе мы стремимся создать максимально возможную платформу для веб-разработки.

Обновление: оно было переименовано из ASP.NET 5 в ASP.Net Core 1.0.

.NET Core:

.NET Core – это небольшая оптимизированная среда выполнения, которая лежит в основе ASP.NET Core . В настоящее время он работает на Windows, Linux и Mac. Он представляет собой высокопроизводительный и модульный дизайн и поддерживает несколько приложений на веб-сервере, каждый из которых имеет собственную копию среды выполнения .NET Core, что обеспечивает полный бок о бок опыт, и это упростит принятие нового. NET Core, не влияя на другие приложения, и это делает .NET Core архитектуры скачком вперед от текущего classического .NET 4.6. Эти продукты активно разрабатываются командой .NET и в сотрудничестве с сообществом разработчиков с открытым исходным кодом. Вместе мы нацелены на совершенствование и расширение платформы .NET с новыми функциями и новыми сценариями.

.NET Core имеет два основных компонента. Он включает небольшую рабочую среду, которая построена из той же базы кода, что и CLR .NET Framework. Среда выполнения .NET Core включает в себя те же GC и JIT (RyuJIT), но не включает такие функции, как Домены приложений или Безопасность доступа к коду. Среда выполнения поставляется на NuGet через пакет Microsoft.CoreCLR.

.NET Core также включает библиотеки базового classа. Эти библиотеки в основном имеют тот же код, что и библиотеки classов .NET Framework, но были учтены (удаление зависимостей), чтобы позволить нам отправлять меньший набор библиотек. Эти библиотеки отправляются как System. * Пакеты NuGet на NuGet.org.

Дополнительные сведения см. В разделе Введение в .NET Core

ASP.NET 5 – это новая платформа, основанная на DNX (среда выполнения .NET). DNX дежурный для загрузки CLR. Теперь есть два вида DNX: для Full .NET CLR (из .NET Framework) и для CoreCLR. CoreCLR – это новая кроссплатформенная легкая CLR (работает на Win / Linux / Mac).

ASP.NET 5 работает без сбоев на CLR / CoreCLR, поскольку DNX реферат его из среды исполнения.

Сборки IL для старых .NET все еще используются с новыми CoreCLR и DNX. Таким образом, функциональность ASP.NET 5 представляет собой набор пакетов nuget.

Строго говоря, сейчас нет таких вещей, как «asp.net core 5» и «.net core» (как CLR! = .NET). Там есть «ASP.NET 5, работающий на CoreCLR».

ИМО лучше рассматривать «ASP.NET 5» как «.NET 5».

Пока нет ASP.net Core 5. Фактически, Microsoft решила изменить .net 5 (версия после 4.6) на совершенно новое имя: .net Core

Таким образом, версия, выпущенная в июне 2016 года, на самом деле .net Core 1.0

Причина, по которой они дали ему новое имя, – это самое фундаментальное изменение, которое они внесли в него.

Эти фундаментальные изменения include:

  • Кросс-платформа : она работает на Windows / Linux / Mac, в отличие от предыдущих версий, работающих только на Windows / IIS
  • Теперь он полностью открыт, и вы можете увидеть каждый бит его кода в GitHub.
  • Его производительность (особенно в ASP.net) намного лучше, чем предыдущие версии, так как вы можете легко настроить конвейер запросов в соответствии с тем, что вам нужно (через middlewares). Если вы знакомы с узлами nodejs и ExpressJs, это похоже на ExpressJs. В некоторых случаях он работает лучше, чем NodeJs. Посмотрите на этот тест .
  • Он разработан с учетом современного развития приложений, для высокоразвитых облачных приложений , микросервисов и контейнеров (dockerов)

Кстати, есть также Mono runtime в качестве альтернативы CoreCLR в linux apt и пакете Docker. Моно по-прежнему является значением по умолчанию, когда он устанавливает DNX. Все дело в «Core» заключается в том, что это кросс-платформенная платформа .net, и в какой-то момент размещение приложения ASP.NET 5 не будет использовать IIS, Apache, Mono и т. Д., Но DNX и Libuv.

ASP.NET Core – это следующая версия ASP.NET MVC 5, да, номер версии запутан! Он прошел несколько изменений имени. Он начался как ASP.NET vNext, а затем был изменен на ASP.NET 5, затем был переименован в ASP.NET MVC 6 и со временем стал ASP.NET Core 1.0.

Основное различие между ASP.NET и kernelм ASP.NET

  • Независимые от платформы функции, ASP.NET Core обеспечивает хостинг на нескольких платформах (Win / Linux / Mac OS) хостинга ( кросс-платформа ).
  • Введена новая более легкая версия CLR и сборок с независящими структурами.

  • Рамки – это полная переписывание (удаление зависимостей с DI) и его проект с открытым исходным кодом .

  • Шаблон проекта по умолчанию проекта обновляется с помощью сценариев типа JQuery.
  • Улучшены новые функции безопасности и полностью развязаны для всех зависимых фреймворков.

  • Обновленный шаблон проекта с угловой и json-конфигурацией и расширенными пакетами поддержки с узловыми модулями.

  • Поддержка для Visual Studio IDE (2015 v3 + 2017 и выше) и VS Code IDE.

Если вы новичок в этом, см. Здесь

.NET Core 1.0 – это не следующая версия .NET 4.6.2 (Полная .NET Framework). Если это следующая версия, она должна иметь больше возможностей, чем предыдущая. Но в соответствии с Microsoft .NET Core 1.0 не реализованы некоторые из возможностей .NET 4.6. Именно поэтому они назвали его .NET Core 1.0 вместо .NET 5.

В ASP.NET Core 1.0 они используют .NET Core 1.0 в качестве ссылки. Это означает, что нам не нужно устанавливать .NET framework для запуска нашего приложения ASP.NET Core 1.0.

Здесь вы можете найти более подробную информацию.

ASP.NET Core ie 1.0 / 2.0 … ASP.NET Core – это кросс-платформенная платформа с открытым исходным кодом для создания современных облачных веб-приложений в Windows, MacOS или Linux.

ASP.NET, т. Е. … 4.5 / 4.6 ASP.NET – это зрелая структура, которая предоставляет все службы, необходимые для создания серверных веб-приложений корпоративного уровня в Windows.

Нет такой вещи, как ASP.NET Core 5 и .NET Core. ASP.NET 5 аналогичен ASP.NET Core 1.0

См. Ссылку: https://docs.microsoft.com/en-us/aspnet/core/choose-aspnet-framework?view=aspnetcore-2.0.

  • Измените коллекцию маршрутов MVC6 после запуска
  • Как узнать выбранные флажки из метода HttpPost Create action?
  • Произошла ошибка при попытке определить идентификатор процесса dotnet.exe, на котором размещается ваше приложение. Произошла одна или несколько ошибок
  • Как я вставляю пользовательские секреты ASP.NET 5 (vNext) в свой собственный class утилиты?
  • Как использовать область в ядре ASP.NET
  • Получение абсолютных URL-адресов с использованием ядра ASP.NET
  • Шифрованная конфигурация в ядре ASP.NET
  • VS 2015. Настройка правильной целевой структуры для веб-проекта ASP.NET 5
  • Как получить IP-адрес клиента в ASP.NET CORE?
  • Зачем использовать сторонний контейнер DI через встроенный контейнер ASP.NET Core DI?
  • Вставить услугу в Action Filter
  • Давайте будем гением компьютера.