asp.net - 将ASP.NET Core ap部署到Azure : dotnet restore fails

标签 asp.net azure asp.net-core asp.net-core-mvc azure-web-app-service

尝试将 asp.net mvc 核心应用部署到 Azure WebApp,但在尝试执行 dotnet 还原 时失败,并出现以下错误

error MSB4057: The target "_GenerateRestoreGraphProjectEntry" does not exist in the project.

在 Azure 控制台中

dotnet --version
1.0.0-preview3-004056

在我的机器上

dotnet --version
1.0.0-preview4-004233

也许我需要设置 global.json 以针对特定框架(如果该框架与我机器上的框架不同)。

(这不是问题的一部分,只是吐出我的胆量:) 作为 .net 开发人员(无论是在 Mac 上还是在 Windows 上),这一天并不是一个美好的一天,因为在 .csproj 上的 VS 17 RC2 更新之后,他们都无法工作,各种 msbuild 问题以及最后的 IIS Express 身份验证停止工作(重定向登录期间循环)

最佳答案

不幸的是,更改 global.json 在您的情况下不起作用:(

Azure 目前只有这些 dotnet cli 版本

1.0.0-preview1-002702
1.0.0-preview2.1-003155
1.0.0-preview2-003121
1.0.0-preview2-003131
1.0.0-preview2-003156
1.0.0-preview2-1-003177
1.0.0-preview3-004056

根据您的描述,您似乎能够在开发计算机上本地执行 dotnet 恢复,但不能在 Azure 中进行

我怀疑这是因为1.0.0-preview3-004056没有最新的msbuild:

D:\Program Files (x86)\dotnet\sdk\1.0.0-preview3-004056>dotnet.exe MSBuild.dll
Microsoft (R) Build Engine version 15.1.0.0

我没有您的“1.0.0-preview4-004233”,但与 latest dotnet release on github 进行比较:

C:\Downloads\dotnet-dev-win-x64.latest>dotnet.exe sdk\1.0.0-preview5-004269\MSBuild.dll
Microsoft (R) Build Engine version 15.1.458.808

不难看出Azure缺少msbuild的几个错误修复(15.1.458.808 > 15.1.0.0)

我建议您将 global.json 更改为版本 1.0.0-preview3-004056,并尝试 dotnet 恢复在本地项目,如果它确实失败并出现相同的错误消息,那么它将证实我的理论...解决方案是等待 Azure catch 或上传您自己的 dotnet cli 到 Azure

[编辑]

Azure 现在有 1.0.0-preview4-004233

关于asp.net - 将ASP.NET Core ap部署到Azure : dotnet restore fails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41143115/

相关文章:

asp.net - Gridview 将当前行与上一行进行比较

c# - Azure 函数异常 - 将日志写入表存储时出错 : Microsoft. Azure.Cosmos.Table.StorageException

python - 监听来自 python 的 Azure 队列消息以进行 Web 作业

azure - 当 Azure Functions 在消耗计划上运行时,如何查看失败的身份验证 (EasyAuthModule_32/64) 日志?

asp.net-core - 我们如何在新的asp.net vnext中存储配置数据?

c# - Webapi 计算特定的获取请求

jquery - AJAX 到 Web 方法不返回 JSON

javascript - 第一次加载谷歌图表时,垂直轴标签没有出现

c# - 使用 xUnit 和 asp.net core 测试我的服务

c# - 配置绑定(bind)不起作用