imranmomin / Hangfire.AzureCosmosDb

Azure Cosmos DB storage provider for Hangfire
https://www.hangfire.io/
MIT License
17 stars 16 forks source link

exception when using Microsoft.Azure.Cosmos 3.18.0 #17

Closed Daniel-GabrielN closed 3 years ago

Daniel-GabrielN commented 3 years ago

Hi, There was a change in Microsoft.Azure.Cosmos, where a new parameter was added(CosmosLinqSerializerOptions).

2220 LINQ: Adds camelCase support to GetItemLinqQueryable() as optional parameter

https://github.com/Azure/azure-cosmos-dotnet-v3/pull/2220

Since this project uses 3.6.0, there is a runtime exception:

  "ClassName": "System.MissingMethodException",
  "Message": "Method not found: 'System.Linq.IOrderedQueryable`1<!!0> Microsoft.Azure.Cosmos.Container.GetItemLinqQueryable(Boolean, System.String, Microsoft.Azure.Cosmos.QueryRequestOptions)'.",
  "Source": "Hangfire.AzureCosmosDB",
  "StackTraceString": "   at Hangfire.Azure.CosmosDbWriteOnlyTransaction.<>c__DisplayClass15_0.<RemoveFromSet>b__0()\n   at System.Collections.Generic.List`1.ForEach(Action`1 action)\n   at Hangfire.States.BackgroundJobStateChanger.ChangeState(StateChangeContext context)\n   at Hangfire.Server.DelayedJobScheduler.EnqueueBackgroundJob(BackgroundProcessContext context, IStorageConnection connection, String jobId)",

I think the fix would be to upgrade to Microsoft.Azure.Cosmos 3.18.0 What do you think? I have a local branch with this change.