【问题标题】:Deploy ASP.NET Core 2.1 Preview App to Azure将 ASP.NET Core 2.1 预览版应用程序部署到 Azure
【发布时间】:2018-03-04 16:50:39
【问题描述】:

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

然后我在 Azure 上创建了一个新的应用服务,安装了 Preview1 扩展(如 here 所示)并使用我的 Git 存储库设置了部署。

当我将代码从本地机器推送到 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.

【问题讨论】:

    标签: c# azure asp.net-core


    【解决方案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" />
    

    【讨论】:

    • 嗨@theroot,将“Microsoft.EntityFrameworkCore.Tools.DotNet”和“Microsoft.VisualStudio.Web.CodeGeneration.Tools”更改为“2.0.0”版本将使其针对 ASP.NET Core 构建2.0,而不是“2.1.0-preview1-final”,这是我要指出的运行时版本,对吧?谢谢你,佩德罗·卡布拉尔
    • 是的,它将为 .net core 2.0 而不是“2.1.0-preview1-final”构建,但正如github.com/dotnet/cli/issues/7634 中所解释的那样,NuGet 中还没有一些包,因为 2.1 还没有处于发布模式。
    猜你喜欢
    • 2021-05-08
    • 1970-01-01
    • 1970-01-01
    • 2019-01-08
    • 2016-06-01
    • 2018-08-20
    • 2019-11-12
    • 1970-01-01
    • 2020-07-25
    相关资源
    最近更新 更多