Durante un reciente reinicio de nuestro servidor de desarrollo, el SQL Server
comenzó a usar .NET 4.0
para el SQLCLR. Esto significa que nada utilizando el CLR en las obras de SQL, o al menos esa es mi entendimiento mediante la lectura de estas fuentes:SQLCLR utilizando la versión incorrecta de .NET Framework
http://software.intel.com/en-us/blogs/2009/10/16/sql-server-2008-sqlclr-net-framework-version/
www.sqlskills.com/BLOGS/BOBB/post/On-SQL-Server-and-NET-40.aspx
Todo lo que tenemos son los mensajes de error de este tipo:
Msg 6517, nivel 16, estado 1, línea 1 Error al crear AppDomain "xxx.dbo [ddl] .3". La firma de tipo de método no es compatible con Interoperabilidad.
Ejecución de la declaración (según lo sugerido por @ John-Christensen)
select * from sys.dm_clr_properties
resultados en la siguiente información:
*Name* *Value*
directory C:\Windows\Microsoft.NET\Framework64\v4.0.30319\
version v4.0.30319
state CLR is initialized
¿Alguien sabe cómo resolver esto o cómo podemos forzar SQL Server CLR para usar una versión anterior del Framework?
Cuando ejecuto el SELECT * FROM sys.dm_clr_properties consigo el siguiente: "directorio: C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ versión: v4.0.30319 Estado: CLR está inicializado" que para mí indica que se usa v4.0. –
He agregado la respuesta a esa declaración a la pregunta principal también. –