本地运行Azure Durable Functions时仍执行旧代码且无触发启动
针对Azure Durable Functions本地运行异常的排查解决步骤
清理Durable Functions本地持久化存储
Durable Functions默认用本地SQLite存储编排实例历史,旧实例可能残留并自动执行。找到项目根目录下的durable-functions文件夹,删除其中所有文件(如DurableTaskHub.sqlite3)后重启项目。检查启动配置参数
打开项目的launchSettings.json,确认commandLineArgs中是否存在自动触发编排的指令,或是预设了强制启动的配置项,有则删除相关内容。清除函数运行时缓存
Windows系统删除%LOCALAPPDATA%\AzureFunctionsTools\Cache目录,Mac/Linux删除~/.azurefunctions/Cache目录,之后重新启动项目,避免缓存的旧代码被加载。彻底清理编译产物
删除项目的bin和obj目录,重新执行完整的构建操作,确保没有旧编译文件残留。同时检查是否有依赖的类库项目仍包含模拟代码,同步更新依赖。排查额外触发器残留
确认是否存在Timer等其他类型的触发器绑定在编排器上,这类触发器可能导致自动启动。另外在local.settings.json中添加"AzureWebJobsDisableHomepage": true,禁用函数应用启动时的默认触发行为。确认调试进程附加正确
调试时确保附加到func.exe进程,而非其他无关进程,避免断点因进程不匹配而无法命中。
内容的提问来源于stack exchange,提问作者JanetSera
相关产品推荐
相关产品推荐

