Вышел ASP.NET Core RC2

ASP.NET logo Сегодня стала доступна для загрузки RC2 версия ASP.NET Core. Давайте посмотрим как её установить, какие произошли ключевые изменения, а так же запустим кроссплатформенное “Hello World!”.

Как установить?

Загрузить ASP.NET Core RC2 (для различных ОС) и инструменты для Visual Studio можно с сайта: http://get.asp.net

Перед установкой необходимо удалить инструменты от предыдущей версии (RC1).

А что с ASP.NET 5?

Как уже было отмечено ранее, ASP.NET 5 переименован в ASP.NET Core 1.0.

Изменения в ASP.NET Core RC2

.NET CLI

Одним из ключевых изменений в RC2 является появление .NET CLI (Command-Line Interface). Это утилита для командной строки, которая заменяет устаревшие dnvm, dnx и dnu. Она соответствует им по функциональности. После установки ASP.NET Core RC2 откройте командную строку и введите:

dotnet --help

.NET CLIdotnet поддерживает все необходимые для создания и запуска приложения команды: new, restore, build, run и т.д.

Приложения для ASP.NET Core – консольные

Приложения в ASP.NET Core явно реализуют метод public static void Main(), который используется в качестве входной точки. Это не заменяет startup.cs, использовавшийся в прошлых версиях, а дополняет его. Все, что сейчас находится внутри Main(), раньше DNX делал самостоятельно, после чего обращался к классу Startup для дальнейшей настройки. Теперь реализацию Main() задает разработчик, что предоставляет ему больше возможностей по контролю над конфигурацией и запуском ASP.NET Core приложения.

Вот пример такого метода:

public class Program
{
    public static void Main(string[] args)
    {
        var host = new WebHostBuilder()
            .UseKestrel()
            .UseContentRoot(Directory.GetCurrentDirectory())
            .UseIISIntegration()
            .UseStartup<Startup>()
            .Build();

        host.Run();
    }
}

Как можно заметить, здесь присутствует разделение ответственностей: Main() настраивает среду выполнения, а Startup класс – само приложение

Новые шаблоны проектов

Шаблоны веб-проектов находятся в разделе Web:.NET Core Web Application tempaltes

После выбора типа framework можно будет выбрать тип проекта – пустой, настроенный на WebApi или WebApp.

Так же добавлена новая секция для проектов .NET Core:

.NET Core Application tempaltes

Поддержка IIS

Для запуска ASP.NET Core приложений в IIS создан модуль, который необходимо указать в web.config (новые шаблоны проектов уже его содержат):

<configuration>
<system.webServer>

  <handlers>
    <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
  </handlers>

  <aspNetCore processPath="%LAUNCHER_PATH%"
              arguments="%LAUNCHER_ARGS%"
              stdoutLogEnabled="false"
              stdoutLogFile=".\logs\stdout"
              forwardWindowsAuthToken="false"/>
</system.webServer>
</configuration>

Миграция с RC1 на RC2

Вот несколько ссылок на информацию, которая может мигрировать RC1 DNX-приложения на ASP.NET Core RC2:

Поддержка на Azure

На этой неделе так же станет возможным размещение ASP.NET Core RC2 приложений в Azure. Анонс будет размещен в Azure Blog.

Запускаем простое ASP.NET Core приложение

Можно легко проверить работоспособность ASP.NET Core после установки на любой ОС. Для этого создайте пустую папку и выполните в ней следующие команды (в командной строке):

>dotnet new
>dotnet restore
>dotnet run

Результатом будет созданный проект, который при запуске (dotnet run) выведет строку “Hello World!”.