Azure函数调试和部署分开

Azure函数调试和部署分开

问题描述:

我有一个Azure函数VS项目中有多个函数。Azure函数调试和部署分开

  1. 我可以自己调试1个函数,而无需在同一个项目中启动其他函数吗?当我在Visual Studio上调试项目时,所有功能都已启动并运行。

  2. 我可以只更新1功能,而不是在1种功能的应用项目,所有的功能呢?从Visual Studio发布时,整个功能应用程序被推送。

  3. 更重要的是如何维护的部署后天青门户启用/禁用功能状态。现在发生的情况是,每次部署之后,所有功能都会启用,并且必须手动关闭这些功能。

  1. 是的,你可以。您可以利用host.json文件中的设置来指定希望在调试过程中加载的函数。

// Array of functions to load. Only functions in this list will be enabled. // If not specified, all functions are enabled. functions": [ "QueueProcessor", "GitHubWebHook" ]

凡QueueProcessor和GitHubWebHook是你的函数的 '姓名' 本身

[FunctionName("QueueProcessor")] 

对于其他host.json设置看到here

  1. 你“可以”选择你的函数拆分为三个独立的项目,发布配置指向同˚F如果你真的想确保只有特定的代码被发布,才可以申请'申请'。就我个人而言,我通常只是在每次进行更改时都将整个项目推向多个功能。

  2. 我发现,我是从第1步中指定的设置,如果发表,将传播到门户网站的功能

开始=>
+0

谢谢你1.它适用于本地。 3似乎并不适合我。即使我从host.json删除功能,他们仍然在部署 – Elveryx

+0

启用看起来,如果你使用[关闭]属性由@加斯 - 梅森提到的,这会当你的项目编译写出来的functions.json文件。 –

也有在Microsoft.Azure.WebJobs一个DisabledAttribute可以用来标记功能禁用。

属性构造函数重载提供链接到您的应用程序功能的应用程序设置,您就可以有条件地禁用该功能。

注:有这个属性早些时候issues人,但他们已经现在已经得到解决。

+0

谢谢。添加Disable()来触发Run函数的参数可以做到这一点! – Elveryx