无法在 Azure Functions App v3 中加载文件或程序集"Microsoft.Extensions.DependencyModel, version=3.0.0.0



我有一个v3队列触发函数,在我的Windows 10机器上一直工作得很好。.csproj文件是这样的:

<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<AzureFunctionsVersion>v3</AzureFunctionsVersion>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
</PropertyGroup>

我不确定为什么我开始得到主题行中提到的异常,但底线是这个函数过去工作得很好。这个Stackoverflow的帖子对解决这个问题没有帮助。会不会是升级到Windows 11操作系统的原因?我没有在迁移到Windows 11后立即运行这个功能应用程序,所以我不能就此发表评论。

异常的完整堆栈跟踪如下:

无法加载文件或程序集'Microsoft.Extensions '。DependencyModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'。系统找不到指定的文件。在Microsoft.Azure.Functions.Extensions.DependencyInjection.FunctionsStartup.Configure (WebJobsBuilderContextcontext, IWebJobsBuilder builder)Microsoft.Azure.WebJobs.WebJobsBuilderExtensions.ConfigureStartup (IWebJobsStartupWebJobsBuilderContext上下文,webjobsbuilder构建器)C: 项目azure-webjobs-sdk-rqm4t src Microsoft.Azure.WebJobs.Host 托管 WebJobsBuilderExtensions.cs:行162

有什么可能的解决方案,因为它已经成为一个障碍?

要保留特定版本以避免升级到较新的版本,您可以将此条目添加到csproj

<ItemGroup>
<FunctionsPreservedDependencies Include="Microsoft.Extensions.DependencyModel.dll" />
</ItemGroup>

您可以尝试添加<_FunctionsSkipCleanOutput>true到函数的项目文件

:

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<AzureFunctionsVersion>v4</AzureFunctionsVersion>
<_FunctionsSkipCleanOutput>true</_FunctionsSkipCleanOutput>
</PropertyGroup>

相关内容

  • 没有找到相关文章