将ASP.NET Core 2.1预览应用程序部署到Azure

时间:2018-03-04 16:50:39

标签: c# azure asp.net-core

我正在尝试我的第一个ASP.NET Core 2.1预览应用程序,因此我从VS(15.6 - 预览版7)创建了一个新的ASP.NET Core 2.1预览应用程序。在VS.

下的本地方框中,一切运行正常

然后我在Azure上创建了一个新的App Service,安装了Preview1扩展(如here所示)并使用我的Git Repo设置部署。

当我将代码从本地框推送到Git时,部署会启动,但是我收到与运行时相关的错误:

  

NU1102:无法使用版本(> = 15.7.0-preview-000011-1378327)找到包Microsoft.Build.Runtime。

我错过了什么吗?

控制台.net版本检查:

> dotnet --info

D:\home\site\wwwroot
.NET Command Line Tools (2.1.300-preview1-008174)
Product Information:
 Version:            2.1.300-preview1-008174
 Commit SHA-1 hash:  b8df89a54f
Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.14393
 OS Platform: Windows
 RID:         win10-x86
 Base Path:   D:\home\SiteExtensions\AspNetCoreRuntime\sdk\2.1.300-preview1-008174\
Microsoft .NET Core Shared Framework Host
  Version  : 2.1.0-preview1-26216-03
  Build    : f2c3216183d20416568a4bbf5bb7d153e826f153

部署错误:

Command: "D:\home\site\deployments\tools\deploy.cmd"
Handling ASP.NET Core Web Application deployment.
  Restoring packages for D:\home\site\repository\MyApp\MyApp.csproj...
  Restore completed in 450.06 ms for 
D:\home\site\repository\MyApp\MyApp.csproj.
D:\home\site\repository\MyApp\MyApp.csproj : error NU1102: Unable to find 
package Microsoft.Build.Runtime with version (>= 15.7.0-preview-000011-
1378327) [D:\home\site\repository\MyApp.sln]
D:\home\site\repository\MyApp\MyApp.csproj : error NU1102:   - Found 17 
version(s) in nuget.org [ Nearest version: 15.6.82 ] 
[D:\home\site\repository\MyApp.sln]
  Restore failed in 5.43 sec for D:\home\site\repository\MyApp\MyApp.csproj.
Failed exitCode=1, command=dotnet restore 
"D:\home\site\repository\MyApp.sln"
An error has occurred during web site deployment.

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,我通过回退到以下版本修复了它:

<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
<DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="2.0.0" />
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0" />

而不是:

<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.1.0-preview1-final" />
<DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="2.1.0-preview1-final" />
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.1.0-preview1-final" />