运行Azure Function时无法找到FSharp.Core程序集求助
解决F# Azure Functions v2运行时解析FSharp.Core异常的问题
嘿,这个问题我之前帮别人处理过好几次,本质是Azure Functions v2的运行环境和你项目里引用的FSharp.Core版本不兼容导致的,别担心,几步就能搞定:
更新FSharp.Core到兼容版本
2018年的Azure Functions v2基于.NET Core 2.0,它对FSharp.Core的最低要求是4.5.0,而你项目里用的4.4.3.0不在兼容范围内。你可以:- 打开Package Manager Console,运行
Update-Package FSharp.Core自动更新到适配版本; - 或者直接编辑你的
.fsproj文件,把FSharp.Core的引用改成:<PackageReference Include="FSharp.Core" Version="4.5.0" />
- 打开Package Manager Console,运行
确保依赖项被正确打包
有时候即使更新了版本,发布时FSharp.Core也不会被包含到发布包中,导致运行时找不到。你可以在.fsproj的属性组里添加一行配置,强制复制所有锁定的依赖项:<PropertyGroup> <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies> </PropertyGroup>核对函数应用的运行时配置
登录Azure门户找到你的函数应用,进入「配置」->「应用程序设置」,确认FUNCTIONS_EXTENSION_VERSION设置为~2,且FUNCTIONS_WORKER_RUNTIME设置为dotnet(对应.NET Core运行时)。
完成这些操作后,重新构建并发布你的函数,再触发计时器事件试试,应该就能正常运行了。
内容的提问来源于stack exchange,提问作者Emil L
相关产品推荐
相关产品推荐

