无法解析参考 Microsoft.Azure.WebJobs.Extensions - 元数据生成失败

ben*_*nts 8 c# msbuild azure azure-functions

不得不从另一个开发人员那里接手一些工作,所以只是想把我的头全部包起来!

但是我在构建 Azure Functions 项目时遇到问题,并且不断收到来自 的错误Microsoft.NET.Sdk.Functions.Build.targets,特别是无法解析对Microsoft.Azure.WebJobs.Extensions.

到目前为止,我已经尝试重新安装 Nuget 包,重新启动 Visual Studio,我的机器 yada-yada。

我欢迎任何建议,并感谢您的时间!

完整错误如下

Severity    Code    Description Project File    Line    Suppression State
Error       Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'Microsoft.Azure.WebJobs.Extensions, Version=3.0.6.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
   at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name, ReaderParameters parameters)
   at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name)
   at Mono.Cecil.DefaultAssemblyResolver.Resolve(AssemblyNameReference name)
   at Mono.Cecil.MetadataResolver.Resolve(TypeReference type)
   at Mono.Cecil.ModuleDefinition.Resolve(TypeReference type)
   at Mono.Cecil.TypeReference.Resolve()
   at MakeFunctionJson.AttributeExtensions.IsWebJobsAttribute(CustomAttribute attribute)
   at MakeFunctionJson.ParameterInfoExtensions.<>c.<IsWebJobSdkTriggerParameter>b__0_0(CustomAttribute a)
   at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
   at MakeFunctionJson.ParameterInfoExtensions.IsWebJobSdkTriggerParameter(ParameterDefinition parameterInfo)
   at MakeFunctionJson.MethodInfoExtensions.<>c.<HasTriggerAttribute>b__4_0(ParameterDefinition p)
   at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
   at MakeFunctionJson.MethodInfoExtensions.HasTriggerAttribute(MethodDefinition method)
   at MakeFunctionJson.MethodInfoExtensions.HasValidWebJobSdkTriggerAttribute(MethodDefinition method)
   at MakeFunctionJson.FunctionJsonConverter.GenerateFunctions(IEnumerable`1 types)+MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at MakeFunctionJson.FunctionJsonConverter.TryGenerateFunctionJsons()
   at MakeFunctionJson.FunctionJsonConverter.TryRun()
Error generating functions metadata
    Panmure.RiskMI.DataCollector.Functions  
Run Code Online (Sandbox Code Playgroud)

Cla*_*ark 20

我在运行项目时看到一条消息,说“未正确导入 extensionsmetadatagenerator 包”尝试将 Microsoft.Azure.WebJobs.Script.ExtensionsMetadataGenerator nuget 包添加到您的项目中。假设它作为 Microsoft.NET.Sdk.Functions 包的依赖项加载,但我没有在我的项目依赖项列表中看到它。这对我有用。

  • 当您的 Microsoft.NET.Sdk.Functions 版本高于 3.1.1,同时使用 .NETCore3.1 时,就会发生这种情况。较高版本适用于 .NET6,但是它们不会返回直接错误,但不会加载其依赖项/NuGet 包。你的答案有效,但我更喜欢将 Microsoft.NET.Sdk.Functions 降级到 3.1.1。 (3认同)

小智 5

或者你可以只更新到

<TargetFramework>netcoreapp3.1</TargetFramework>
Run Code Online (Sandbox Code Playgroud)

如果你不是 3.1

  • 这对我来说还不够,当我开始收到此错误时我已经在处理这个问题了。添加上述元数据生成器包解决了问题 (2认同)