Azure Web app Error: Could not find 'aspnetcorev2_inprocess.dll'. The framework 'Microsoft.WindowsDesktop.App', version '3.1.0' (x86) was not found
Azure Web app Error: Could not find 'aspnetcorev2_inprocess.dll'. The framework 'Microsoft.WindowsDesktop.App', version '3.1.0' (x86) was not found
我正在使用 azure devops 管道将我的 Asp.net 核心应用程序部署到 azure web 应用程序。
这是我的 csproj Prepertygroup :
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<Version>3.1.18</Version>
<!--<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>-->
<UserSecretsId>aspnet-WebApp_OpenIDConnect_DotNet-81EA87AD-E64D-4755-A1CC-5EA47F49B5D8</UserSecretsId>
<WebProject_DirectoryAccessLevelKey>0</WebProject_DirectoryAccessLevelKey>
</PropertyGroup>
使用此管道脚本部署到具有 .NET 版本的 Azure Web 应用程序 Windows:.NET Core 3.1/2.1。
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'
- task: UseDotNet@2
inputs:
version: '5.0.x'
includePreviewVersions: true # Required for preview versions
performMultiLevelLookup: true
- task: UseDotNet@2
inputs:
version: '3.1.x'
packageType: sdk
includePreviewVersions: true
performMultiLevelLookup: true
一切都已部署,但是当我启动应用程序时出现此错误:
当我去这里查看日志时,我发现了:
Could not find 'aspnetcorev2_inprocess.dll'. Exception message:
It was not possible to find any compatible framework version
The framework 'Microsoft.WindowsDesktop.App', version '3.1.0' (x86) was not found.
- No frameworks were found.
You can resolve the problem by installing the specified framework and/or SDK.
The specified framework can be found at:
- https://aka.ms/dotnet-core-applaunch?framework=Microsoft.WindowsDesktop.App&framework_version=3.1.0&arch=x86&rid=win10-x86
有什么想法吗?老实说,我对 azure 网络应用程序所需的 .netcore 版本与我使用的 .netcore3.1 版本之间的区别感到有些困惑。
编辑“1”:
这是我的 csproj 文件:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
<WebProject_DirectoryAccessLevelKey>0</WebProject_DirectoryAccessLevelKey>
</PropertyGroup>
<ItemGroup>
<Compile Remove="AppCreationScripts\**" />
<Compile Remove="ReadmeFiles\**" />
<Content Remove="AppCreationScripts\**" />
<Content Remove="ReadmeFiles\**" />
<EmbeddedResource Remove="AppCreationScripts\**" />
<EmbeddedResource Remove="ReadmeFiles\**" />
<None Remove="AppCreationScripts\**" />
<None Remove="ReadmeFiles\**" />
</ItemGroup>
<ItemGroup>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Azure.Storage.Blobs" Version="12.10.0" />
<PackageReference Include="Microsoft.Azure.Cosmos" Version="3.23.0" />
<PackageReference Include="Microsoft.Azure.Storage.Blob" Version="11.2.3" />
<PackageReference Include="Microsoft.Identity.Web" Version="1.21.1" />
<PackageReference Include="Microsoft.Identity.Web.UI" Version="1.21.1" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
</ItemGroup>
</Project>
- 从 here
安装托管包
- 是的,您需要安装 ASP.NET Core 3.1 SDK。
- 将 web.config 处理程序从 AspNetCoreModuleV2 更改为 web.config
中的 AspNetCoreModule
500.31 ANCM Failed to Find Native Dependencies
- 此启动失败的最常见原因是未安装
Microsoft.NETCore.App
或 Microsoft.AspNetCore.App
运行时。
- 如果应用程序部署到 ASP.NET Core 3.0 并且机器上不存在该版本,则会发生此错误。
要修复此错误,可以:
在机器上安装合适版本的 .NET Core。
更改应用程序以针对计算机上存在的 .NET Core 版本。
将应用发布为 self-contained deployment。
检查应用服务的配置以更改它以启用对 .NET 3.1 的支持。
登录到您的门户 --> 导航到您的应用服务 --> 单击配置
在堆栈设置下,更改 .Net Framework 版本。
单击保存,然后返回概览并重新启动应用程序服务。
刷新浏览器后,错误应该会消失,应用程序会加载。
我正在使用 azure devops 管道将我的 Asp.net 核心应用程序部署到 azure web 应用程序。 这是我的 csproj Prepertygroup :
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<Version>3.1.18</Version>
<!--<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>-->
<UserSecretsId>aspnet-WebApp_OpenIDConnect_DotNet-81EA87AD-E64D-4755-A1CC-5EA47F49B5D8</UserSecretsId>
<WebProject_DirectoryAccessLevelKey>0</WebProject_DirectoryAccessLevelKey>
</PropertyGroup>
使用此管道脚本部署到具有 .NET 版本的 Azure Web 应用程序 Windows:.NET Core 3.1/2.1。
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'
- task: UseDotNet@2
inputs:
version: '5.0.x'
includePreviewVersions: true # Required for preview versions
performMultiLevelLookup: true
- task: UseDotNet@2
inputs:
version: '3.1.x'
packageType: sdk
includePreviewVersions: true
performMultiLevelLookup: true
一切都已部署,但是当我启动应用程序时出现此错误:
当我去这里查看日志时,我发现了:
Could not find 'aspnetcorev2_inprocess.dll'. Exception message:
It was not possible to find any compatible framework version
The framework 'Microsoft.WindowsDesktop.App', version '3.1.0' (x86) was not found.
- No frameworks were found.
You can resolve the problem by installing the specified framework and/or SDK.
The specified framework can be found at:
- https://aka.ms/dotnet-core-applaunch?framework=Microsoft.WindowsDesktop.App&framework_version=3.1.0&arch=x86&rid=win10-x86
有什么想法吗?老实说,我对 azure 网络应用程序所需的 .netcore 版本与我使用的 .netcore3.1 版本之间的区别感到有些困惑。
编辑“1”: 这是我的 csproj 文件:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
<WebProject_DirectoryAccessLevelKey>0</WebProject_DirectoryAccessLevelKey>
</PropertyGroup>
<ItemGroup>
<Compile Remove="AppCreationScripts\**" />
<Compile Remove="ReadmeFiles\**" />
<Content Remove="AppCreationScripts\**" />
<Content Remove="ReadmeFiles\**" />
<EmbeddedResource Remove="AppCreationScripts\**" />
<EmbeddedResource Remove="ReadmeFiles\**" />
<None Remove="AppCreationScripts\**" />
<None Remove="ReadmeFiles\**" />
</ItemGroup>
<ItemGroup>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Azure.Storage.Blobs" Version="12.10.0" />
<PackageReference Include="Microsoft.Azure.Cosmos" Version="3.23.0" />
<PackageReference Include="Microsoft.Azure.Storage.Blob" Version="11.2.3" />
<PackageReference Include="Microsoft.Identity.Web" Version="1.21.1" />
<PackageReference Include="Microsoft.Identity.Web.UI" Version="1.21.1" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
</ItemGroup>
</Project>
- 从 here 安装托管包
- 是的,您需要安装 ASP.NET Core 3.1 SDK。
- 将 web.config 处理程序从 AspNetCoreModuleV2 更改为 web.config 中的 AspNetCoreModule
500.31 ANCM Failed to Find Native Dependencies
- 此启动失败的最常见原因是未安装
Microsoft.NETCore.App
或Microsoft.AspNetCore.App
运行时。 - 如果应用程序部署到 ASP.NET Core 3.0 并且机器上不存在该版本,则会发生此错误。
要修复此错误,可以:
在机器上安装合适版本的 .NET Core。
更改应用程序以针对计算机上存在的 .NET Core 版本。
将应用发布为 self-contained deployment。
检查应用服务的配置以更改它以启用对 .NET 3.1 的支持。
登录到您的门户 --> 导航到您的应用服务 --> 单击配置
在堆栈设置下,更改 .Net Framework 版本。
单击保存,然后返回概览并重新启动应用程序服务。