.NET Core - автономное развертывание не работает - PullRequest
0 голосов
/ 09 января 2019

У меня есть .NET Core Web Application. Я использую команду publish для создания автономного развертывания .

Он создает файлы и, по-видимому, создает ядра ядра .net, но при запуске в IIS в Windows 10 мне все еще нужно установить .NET Core Runtime , чтобы заставить его работать. После установки пакета .NET Core Hosting он работает нормально.

Я просмотрел множество других сообщений, прежде чем спрашивать, но не могу найти ответ.

По умолчанию IIS выдает следующую ошибку:

HTTP ERROR 500.19 - Внутренняя ошибка сервера

Моя команда публикации:

dotnet publish "mydirectory\mywebsite.csproj" --self-contained --framework netcoreapp2.1 -r win10-x64 -c Release

Csproj выглядит так:

 <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <UserSecretsId>aspnet-mywebsite-656GASF8-B9H4-5963-1038-5D735B609E15</UserSecretsId>
      <RuntimeIdentifiers>win10-x64</RuntimeIdentifiers>
  </PropertyGroup>

Вот опубликованные файлы.

enter image description here

Я подумал, что, возможно, часть 'l1-1-0' может быть неправильной версией фреймворка, но моя версия dotnet - 2.1.500.

enter image description here

Что мне нужно сделать, чтобы заставить его работать, пожалуйста?

1 Ответ

0 голосов
/ 10 января 2019

Комментарий Лекса Ли / сообщение в блоге содержит ответ. Я подробно описываю это здесь, чтобы попытаться спасти кого-то еще потерявшего дни от этого простого недоразумения.

Самостоятельное развертывание действительно включает время выполнения , но он не включает ASP.NET Core module for IIS, который вы получаете при загрузке Runtime & Hosting Bundle из .net загрузок страница .

Поэтому, если вы развертываете в IIS, вам нужно будет запустить установщик Runtime & Hosting Bundle даже для автономного развертывания.

Самостоятельное развертывание означает, что приложение будет использовать .NET Core Runtime, поставляемое вместе с приложением, а не то, что установлено на компьютере.

...