Microsoft.AspNetCore.App与Microsoft.NETCore.App发布问题

时间:2019-06-12 18:13:16

标签: deployment .net-core

我有一个.NET core 2.2应用程序,试图将其发布到我的虚拟主机上,但结果是出现“ 500-内部服务器错误”。

我联系了支持人员,他们认为问题出在以下方面:

  

我们为您的网站启用了详细错误,并且显示“处理程序>” aspNetCore“在其模块列表中有错误的模块” AspNetCoreModuleV2“。您的网站似乎正在使用Microsoft.AspNetCore.App 2.2.1    应用程序,并且此版本未安装在服务器上。由于此网站无法正常运行。

     

在服务器上安装了Microsoft.NETCore.App 2.2.1。因此,我们建议您使用.NetCore 2.2.1重新部署应用程序,然后再次检查网站。

     

我们仅支持在共享托管服务器上安装的.Net核心运行时。使用正确的版本重新部署您的应用程序,以避免任何进一步的问题。请注意,我们的共享服务器不支持SCD(自包含已部署的应用程序)。我们仅支持FDD(依赖框架的已部署应用程序)。

如果执行“ dotnet --info”,则可以看到我的计算机上同时安装了.NETCore.App和AspNetCore.App。

  

.NET Core SDK已安装:    2.2.103 [C:\ Program Files \ dotnet \ sdk]

     

.NET Core运行时已安装:    Microsoft.AspNetCore.All 2.2.1 [C:\ Program Files \ dotnet \ shared \ Microsoft.AspNetCore.All]    Microsoft.AspNetCore.App 2.2.1 [C:\ Program    文件\ dotnet \ shared \ Microsoft.AspNetCore.App]    Microsoft.NETCore.App 2.2.1 [C:\ Program> Files \ dotnet \ shared \ Microsoft.NETCore.App]

我的.csproj引用的是Microsoft.AspNetCore.App,但似乎无法将其更改为Microsoft.NETCore.App。

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App"/>
    <PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.1"/>
    <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="6.0.0"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.2.1"/>
  </ItemGroup>
</Project>

有什么办法可以部署此应用程序以使用Microsoft.NETCore.App,使其可以在服务器上运行?

1 个答案:

答案 0 :(得分:0)

在您要部署的计算机上,您是否具有用于托管的.NET Core SDK? 您的发布个人资料是在创建自包含的还是依赖于框架的应用?

您要在什么上托管应用程序? IIS / Azure / Docker?

根据以上所述,发布时应选择Framework Dependent。

此外,如果您要将它托管在服务器上,则这是.net核心sdk。由于您未指定,因此我添加了Microsoft环境sdk兼容性 https://dotnet.microsoft.com/download/thank-you/dotnet-runtime-2.2.5-windows-hosting-bundle-installer