I am working on an Azure function project in a Class Library project that targets .NET Standard 2.0.
I am using the following assemblies, shown below. Beside each one, I've included its dependency requirement of the version of Microsoft.Azure.Webjobs.
"Microsoft.Azure.Functions.Extensions" Version="1.0.0" /> Azure.Webjobs needed: >=3.0.5
"Microsoft.Azure.WebJobs.Extensions" Version="3.0.6" /> Azure.Webjobs needed: >=3.0.14
"Microsoft.Azure.WebJobs.Extensions.Http" Version="3.0.2" /> Azure.Webjobs needed: >=3.0.2
"Microsoft.Azure.WebJobs.Extensions.ServiceBus" Version="4.1.2" /> Azure.Webjobs needed: >=3.0.16
I have installed Microsoft.Azure.Webjobs v3.0.22 which (seemingly) satisfies all the above requirements.
Yet when I run my application repeatedly, the runtime alternates between the following errors:
Could not load file or assembly **'Microsoft.Azure.WebJobs.Host,
Version=3.0.14.0**, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or
one of its dependencies. The located assembly's manifest definition
does not match the assembly reference. Source Error:
Calling assembly : **Microsoft.Azure.WebJobs.Extensions,
Version=3.0.6.0**,
And this one:
Could not load file or assembly '**Microsoft.Azure.WebJobs.Host,
Version=3.0.5.0**, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
or one of its dependencies. The located assembly's manifest definition
does not match the assembly reference. (Exception from HRESULT:
0x80131040)
SCalling assembly : **Microsoft.Azure.Functions.Extensions,
Version=1.0.0.0**, Culture=neutral, PublicKeyToken=f655f4c90a0eae19.
Why is the runtime trying to bind to these lower versions of Microsoft.Azure.Webjobs? Why not just use v.3.0.22 which satisfies the requirements listed in Nuget for Webjobs.Extensions and Functions.Extensions?
There should be some other assembly that is using the old version of Host, try to add the binding redirect to your config
<dependentAssembly>
<assemblyIdentity name="Microsoft.Azure.WebJobs.Host" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="3.0.14.0" newVersion="3.0.22.0"/>
</dependentAssembly>
User contributions licensed under CC BY-SA 3.0