local.settings.json 不是 "publish" 文件夹的一部分,部署失败

local.settings.json is not part of "publish" folder and deployment is unsuccessful

我使用 .net core 2.0 和核心工具创建了一个 Azure 函数。它是一个 HttpTrigger 函数。我用了

dotnet 恢复

dotnet publish -c Release

创建发布文件。我可以在 bin/Release/.netcoreapp2.0 下的发布文件夹中看到 2 个文件和 2 个文件夹。它们是:

bin

myapi

host.json

namespace.myapi.deps.json

我将它们部署在 Azure 上的 'wwwroot' 文件夹下的 Function App 上。我不断收到 404 错误。然后我也把local.settings.json文件复制到'wwwroot'文件夹下,函数appurl访问成功。

我的查询:为什么发布文件夹中缺少 local.settings.json?我的 dotnet 命令中缺少任何参数吗?

您确定 404 错误与函数成功之间的唯一区别是缺少 local.settings.json 吗?我问这个是因为 Azure Function App 不依赖或不使用该文件。

local.settings.json 文件仅适用于 运行 使用 azure-functions-core-tools 在本地使用的函数。理想情况下,永远不要发布此文件。有关该文件的更多信息可用 here。如果要将本地设置与 Azure 函数应用同步,可以在使用 azure-functions-core-tools 发布时使用标志 --publish-local-settings。或者您可以手动添加这些设置。

您永远不必发布该文件。