I'm working with some SQL 2005 CLR code written in C#. We have recently altered a few of the functions to allow NULL parameters. We did this by changing parameters from 'double' to 'SqlDecimal' types. We successfully tested the changes in development and have moved to deploy the updates to the production server. We're using a SQL script to drop the existing code from the server and to then create the updated assembly and related objects. The SQL script which we used in development and testing has been deployed to the production server with no changes, but when we run it there we see an error:
Creating CLR assemblies
Msg 6218, Level 16, State 2, Line 2
CREATE ASSEMBLY for assembly 'Company.Db.CLRStoredProcedures' failed because assembly 'Company.Db.CLRStoredProcedures' failed verification. Check if the referenced assemblies are up-to-date and trusted (for external_access or unsafe) to execute in the database. CLR Verifier error messages if any will follow this message
[ : StoredProcedures::clrproc_OSGBtoWGS84][mdToken=0x600002e][offset 0x0000002C] Unable to resolve token.
I have Googled this error but can't seem to find anything sensible. In the changes we made there were no new or changed references and so I don't believe it's related to anything missing from the server, the code has previously worked there for quite a while. Does anyone know what is going on here?