Revit® | Method not found:
NLog.Logger.Error(System.Exception, System.String)'
Issue:
Method not found: 'Void NLog.Logger.Error(System.Exception, System.String)'.
Error: System.MissingMethodException: Method not found: 'Void NLog.Logger.Error(System.Exception, System.String)'.
at hsbCAD.Revit.BeamRDB.Extensions.SelectionExtensions.PickParts(UIDocument uiDoc)
at hsbCAD.Revit.BeamRDB.Utils.GenBeamPartUtilities.AddGenBeamPartDataToParts(UIDocument uiDoc, FamilySymbol symbol)
at hsbCAD.Revit.Phoenix.Cmds.Clt.CmdCltOperationsConvertPartToCLT.F9w8KnC5Z5GsPD4Chk67(Object , Object )
at hsbCAD.Revit.Phoenix.Cmds.Clt.CmdCltOperationsConvertPartToCLT.ExecuteCmd(ExternalCommandData commandData, String& message, ElementSet elements)at hsbCAD.Revit.Phoenix.Cmds.HsbExternalCommand.iAqZmPnAVq(ExternalCommandData , String& , ElementSet )
Cause:
This is caused by a certain dll that was loaded that is older and incompatible with our Revit plugin.
We are working on an automated solution to make this easier and more transparent for the user.
Often this is caused by another plugin or other installed software.
Until then, you will have to solve it manually.
Solution:
The other dll is the cause, you can test it by changing the extension name so that it cannot be loaded.
To find out which dll's are loaded you need a piece of software from Microsoft:
https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer (procexp64.exe)
In this screenshot you can see from what location the NLog.dll and the NewtonSoft.Json.dll are loaded.
If this is from another unusual location, then that is most likely the dll is causing the error.
If you look up this location for the dll and then temporarily rename it, you can test whether that solves the problem.
By renaming the "wrong" dlls, our software will load the correct dll and the program should work.