Asp.net core ASP.NET Core 2:缺少应用程序说明
我正在发布ASP.NET Core 2应用程序,并看到以下错误Asp.net core ASP.NET Core 2:缺少应用程序说明,asp.net-core,asp.net-core-2.0,Asp.net Core,Asp.net Core 2.0,我正在发布ASP.NET Core 2应用程序,并看到以下错误 Error: An assembly specified in the application dependencies manifest (MyApp.deps.json) was not found: package: 'Microsoft.ApplicationInsights.AspNetCore', version: '2.1.1' path: 'lib/netstandard1.6/Microsoft
Error:
An assembly specified in the application dependencies manifest (MyApp.deps.json) was not found:
package: 'Microsoft.ApplicationInsights.AspNetCore', version: '2.1.1'
path: 'lib/netstandard1.6/Microsoft.ApplicationInsights.AspNetCore.dll'
This assembly was expected to be in the local runtime store as the application was published using the following target manifest files:
aspnetcore-store-2.0.0-linux-x64.xml;aspnetcore-store-2.0.0-osx-x64.xml;aspnetcore-store-2.0.0-win7-x64.xml;aspnetcore-store-2.0.0-win7-x86.xml
我在开发环境中没有看到这个错误。所以我不确定出了什么问题。有没有办法解决这个问题
更新
我安装了SDK(我只安装了运行时),一切都开始工作了。但不确定这是否是最好的解决方案
此程序集应位于本地运行时存储区中
出现此错误是因为未安装ASP.NET核心运行时存储。您有两个选项来修复此问题
此答案仅适用于ASP.NET核心2.0项目。在ASP.NET Core 2.1中,不再有运行时存储。此处详细讨论了此问题: 这似乎与将项目中的Microsoft.AspNetCore.All更新为2.0.3或更高版本有关 在上面的讨论之后,似乎有一段时间的解决方案是在主机上安装最新的.NET Core SDK。但至少在当前的SDK 2.1.300中,这并没有解决我的问题 我的解决方案是,在我的主项目的.csproj中添加以下行:
<PropertyGroup>
<PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest>
</PropertyGroup>
假的
通过这一行,所有框架依赖项都将打包到发布文件夹中!使用此开关,我的一个项目的发布数据从15MB增加到55MB。但至少在找到更好的解决方案之前,这是可行的。确保您的项目具有与Microsoft.NETCore.App(您的项目目标框架)和(默认情况下,对于.NET Core 2.0项目包括NuGet依赖项)或(对于.NET Core 2.1+项目)相匹配的版本
如果您曾经将项目目标框架从.NET Core 2.0更新到.NET Core 2.1,请记住相应地更新NuGet依赖项,因为它们不会自动更新。我想在@pallxk的答案中添加一些内容。他给了我解决问题的提示。 我熟悉使用VisualStudio,但不太熟悉VS代码 对于VisualStudio,我没有任何问题,但是对于他提到的VS代码,我必须手动更新Nuget依赖项。我不知道在哪里更新它们。 它们位于我的项目文件夹下,位于:
.vscode/launch.json
我必须更新
"program": "${workspaceFolder}/Ghaseel.RestApi/bin/Debug/netcoreapp2.1/myProject.dll
对此
"program": "${workspaceFolder}/Ghaseel.RestApi/bin/Debug/netcoreapp2.2/myProject.dll
我希望这可以帮助其他人解决他们的问题。我通过安装nuget软件包解决了这个问题
“Microsoft.AspNetCore.ApplicationInsights.HostingStartup”这也适用于我。其他解决方案不起作用。仅安装运行时存储并不能解决此问题。。。然而,你的第二个选择是。下载链接在摆姿势时(8个月前)是准确的。从那时起,我们已经有多个2.0.x补丁更新。您需要从获取最新的2.0.x运行时存储下载。我更新了答案以反映这一点。此答案仅适用于2.0.x版本。在撰写本文时,2.1.x还不存在。我更新了答案,以反映它仅适用于此处的2.0.x.Netcore 2.1.1。我使用了MSBuild,但设置了相同的属性
/p:PublishWithAspNetCoreTargetManifest=false
,它确实解决了问题!第二个选择是itu拯救了我的一天:)我将我的项目从.NET Core 2.0迁移到了.NET Core 2.1,这个解决方案对我很有效。
"program": "${workspaceFolder}/Ghaseel.RestApi/bin/Debug/netcoreapp2.1/myProject.dll
"program": "${workspaceFolder}/Ghaseel.RestApi/bin/Debug/netcoreapp2.2/myProject.dll