我正在使用 Visual Studio 2019 使用 Azure function v3.0 开发 Azure function 应用程序。我实现了一个时间触发的功能。我想更改内容“时间表”function.json
:
function.json
file:
我之前的回答确实是正确的,我操作的时候。经过大量测试,我认为是因为微软官方更新的原因。如果你也有兴趣,可以尝试使用之前的azure功能进行测试。
再次提醒您,修改function.json文件也会修改.dll
发布文件的时间,即您修改的TimerTrigger时间不会生效。
让我描述一下我的最新进展。
-
创建一个新的天蓝色函数。也可以使用之前的,记得删除这两个配置SCM_DO_BUILD_DURING_DEPLOYMENT
and WEBSITE_RUN_FROM_PACKAGE
.
-
Use the func azure functionapp publish function_app_name --csharp --nozip --force
命令来发布您的函数应用程序。
步骤1.使用cd命令进入包含该文件的文件夹host.json
file.
步骤 2. 使用func azure functionapp publish function_app_name --csharp --nozip --force
部署您的函数应用程序。
如果中间有错误提示,可以忽略。我的截图显示NativeCommandError
。只要最终结果上传成功即可。
-
打开 scm 网站或使用应用服务编辑器(预览版)
,进行测试。
-
检查功能是否可以正常运行,测试后可以正常运行。
PREVIOUS
我重新创建了一个 func,发现现在无法修改 function.json。也许它在4.1中修复了 https://azure.microsoft.com/en-us/updates/updated-app-service-authentication-portal-experience-is-now-generally-available/.
现在不可能创建一个新的并对其进行修改。
下面是我之前创建的函数。
我有办法给你修改function.js文件,但是修改不会生效。
原则:
当我们使用vs2019进行发布时,代码中这行
public static void Run([TimerTrigger("*/15 * * * * *")]TimerInfo myTimer, TraceWriter log)
编译后,将.dll
文件已生成。生成的function.json
文件只是这个Function的属性和内容。修改后,将.dll
文件不会被修改,因此不会生效。
以上结论是通过测试得出的。
如何实现function.json文件可以修改
-
Add SCM_DO_BUILD_DURING_DEPLOYMENT=true
.
-
删除WEBSITE_RUN_FROM_PACKAGE configuration
,或修改为0
.
-
刷新scm站点,如果wwwroot下的文件被删除,请使用vs2019重新部署功能app。
-
重复第二步,然后修改function.json
文件才能成功。
以上只允许在发布后修改内容,修改的时间不生效,因为.dll还没有被修改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)