我已经在VS 2019发布中上传了一个asp.net核心应用程序,并定位了该应用程序netcoreapp2.2
。
该应用程序运行正常,但是在检查某些性能问题时,我注意到在Azure门户-常规配置设置中,应用程序堆栈设置为.NET
(不是.net核心),版本为V4.7。
这引发了两个问题:
1.怎么工作...?
2.为什么未使用“发布”部分中显示的设置来配置VS部署过程?
天蓝色设置:
谢谢!
答案 0 :(得分:1)
我通过更新.sln中的以下行来解决此问题 来自:
Visual Studio Version 16
VisualStudioVersion = 16.0.29613.14
收件人:
# Visual Studio Version 16
VisualStudioVersion = 16.0.30011.22
答案 1 :(得分:0)
ASP.NET Core 2.x可以针对.NET Core或.NET Framework。面向.NET Framework的ASP.NET Core应用程序不是跨平台的,它们只能在Windows上运行。通常,ASP.NET Core 2.x由.NET标准库组成。用.NET Standard 2.0编写的库可以在实现.NET Standard 2.0的任何.NET平台上运行。
发布到.NET Core 2.2运行时应用程序时,您始终会收到以下警告消息:
"There was a problem starting MyProjectName on MyWebAppServiceName. Your application requires the .NET Core 2.2.0 runtime, but Microsoft Azure App Service only support the following versions:.
解决此问题的一种方法是在发布设置中将部署模式更改为self-contained
,这将允许应用程序携带其自己的运行时。”
请参阅类似的case。
编辑:
在门户网站上创建webapp时,可以转到Arm模板以获取设置为CurrentStack: dotnetCore
的堆栈设置。但是,当您在VS上发布项目时,它可以确定运行时间。
因此,这可能是一个VS问题,您可以提供反馈,也可以先在Azure上创建webapp,然后将运行时设置为.Net Core并使用VS向其发布项目。