0

我尝试将 .NET 应用程序从 Visual Studio 部署到 Google Cloud App Engine (flex) 并反复收到以下错误:

“未找到应用程序依赖项清单 (.deps.json) 中指定的程序集:包:'Microsoft.AspNetCore.Antiforgery',版本:'2.0.3' 路径:'lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery .dll'

该程序集应位于本地运行时存储中,因为应用程序是使用以下目标清单文件发布的:aspnetcore-store-2.0.8.xml"

我已经下载了最新的 .NET Core SDK 和最新的运行时文件。我可以在此路径中看到防伪 dll 文件:

C:\Program Files\dotnet\store\x64\netcoreapp2.0\microsoft.aspnetcore.antiforgery\2.0.3\lib\netstandard2.0\Microsoft.AspNetCore.Antiforgery.dll

当我尝试用谷歌搜索这个问题时,我大多看到人们提到使用 Microsoft Azure 而不是 Google Cloud,所以我不确定这些解决方案是否适合我?通常,这些解决方案指的是不是相同版本号的“运行时”?我对此比较陌生,所以我会很感激我能得到的任何帮助!

哦,还有,在我的 .csproj 中使用以下代码行: <PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest> 修复错误,以便我能够部署到云,但我读到这不是一个好的解决方案,所以我想尝试修复它不使用那行代码。

此外,当我尝试安装 google cloud SDK 时,出现以下两个错误: 1)文件“C:\Users\Maria\AppData\Local\Programs\Python\Python36\lib\re.py”,第 142 行,在课堂上RegexFlag(enum.IntFlag):AttributeError:模块'enum'没有属性'IntFlag'

2) 文件“C:\Users\Maria\AppData\Local\Programs\Python\Python36\lib\os.py”,第 730 行,在 check_str 中引发 TypeError("str expected, not %s" % type(value).名称)类型错误:预期为 str,而不是字节

4

2 回答 2

1

对于 Python 问题,我看到Cloud SDK 文档

系统要求

Cloud SDK 在 Linux、Mac OS X 和 Windows 上运行。它需要 Python 2.7.x,目前不支持 Python 3。

我对 Python 几乎一无所知,但你的路径看起来像 Python 3。

我相信 Cloud SDK 安装程序将 Python 捆绑在其中,并且您可以在安装过程中检查安装捆绑的 Python 的选项。

于 2018-05-22T14:48:12.013 回答
0

It seemed this was an issue with Google Cloud at the time due to the newest update to 2.0.8. I instead deployed on Microsoft Azure and had no issues. I would expect 2 months later now that Google Cloud will have updated to be compatible.

于 2018-07-25T23:07:02.570 回答