Azure Function App 忽略依赖项

Azure Function App ignoring dependencies

我有一个连接到数据库的 Azure 函数,但它失败并显示以下消息 -

The type or namespace name 'Npgsql' could not be found (are you missing a using directive or an assembly reference?)

project.json中,我有以下声明-

{
  "frameworks": {
    "net46":{
      "dependencies": {
        "Npgsql": "3.2.2",
        "System.Runtime.Serialization.Formatters": "4.3.0"
      }
    }
  }
}

奇怪的是,我在另一个函数应用程序(较低的环境)上有完全相同的函数(从八达通部署)运行没有问题。

有谁能解释为什么我的依赖项在一个 Function App 中被忽略,而另一个却没有?

这似乎是由于 Function App 的部署方式所致。我正在使用 Octopus,通过 "Deploy an Azure Web App" 流程步骤进行部署,似乎所有发生的事情都是旧文件被删除,更新的文件被复制。

问题是,据我所知,project.json 中的依赖项没有得到解决,除非您通过门户编辑文件然后保存它。

我不确定这是否可以归类为 Octopus 或 Azure(或者只是真正懒惰的函数应用程序)中的错误,但这非常令人沮丧。从本质上讲,它使得包含对 function.json 的更改的 Function App 的远程部署变得不可能。