Reputation: 2247
After a recent deployment, the QBO3 Queue Service started logging the following exception to the Windows Event Viewer:
Error in ProcessTimerElapsed; Error Processing Managers; QueueManager.Process; QueueManager.Initialize; Error initializing modules in QueueManager QBO; Unable to initialize configuration for qbo/ObjectType; Unable to initialize configuration for qbo/Abstract; Unable to initialize configuration for qbo/ConfigurationEntry; Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
The correct version of Newtonsoft.Json is installed in both:
Upvotes: 0
Views: 93
Reputation: 2247
The root cause of this issue was an older copy of Newtonsoft.Json (version 9, in this case) being present in the root folder of the website.
This error manifested with the Queue Service, but not with the web server, because the Queue Service and IIS handle the application domains slightly differently:
It is unwise to keep backup copies of web components in the website (either the root or child folders). Instead:
Upvotes: 0