SQL Server 2016: CREATE ASSEMBLY pour l'assembly 'System.ServiceModel' a échoué

J'essaie d'importer System.ServiceModel.dll pour un de mes projets en obtenant ce qui suit:

CREATE ASSEMBLY pour l'assembly 'System.ServiceModel' a échoué car l'assembly 'microsoft.visualbasic.activities.comstackr' est mal formé ou n'est pas un assemblage .NET pur.

SQL Server est en cours d'exécution sur Windows Server 2012 R2.

Y a-t-il une solution à ce problème?

Je suis conscient de problèmes similaires avec SQL Server 2012? Que diriez-vous de SQL Server 2014?

Merci d'avance

Non, il n'y a pas de correctif permettant de charger ServiceModel . Le problème est qu'il s'agit d'une bibliothèque .NET Framework non prise en charge. Cette bibliothèque a fonctionné dans SQL Server 2005, 2008 et 2008 R2 car ils étaient liés à CLR version 2.0. Cependant, étant donné qu'il ne figure pas dans la list "prise en charge", il n'a jamais été garanti de fonctionner avec toutes les mises à niveau .NET Framework. Par conséquent, alors qu'il s'agissait d'un assembly pur-MSIL, ils l'ont modifié pour être un assembly en mode mixte, et ceux-ci ne peuvent pas être chargés dans SQL Server, à commencer par SQL Server 2012.

Ce problème a été documenté sur Stack Overflow ici:

  • Enregistrer la fonction CLR (basée sur WCF) dans SQL Server 2012

  • SQL CLR – Migration de 2008 R2 à 2012.

  • (Unfixable) L'assembly existe sur SQL Server 2014 mais il prétend qu'il ne l'a pas

Plus d'infos ici:

  • SQL Server: "CREATE ASSEMBLY pour l'assembly 'Test' a échoué car l'assembly 'Test' est mal formé ou n'est pas un assembly .NET pur."

  • Le CLR personnalisé SQL Server échoue avec l'erreur "Impossible de charger le file ou l'assembly ou une de ses dependencies Le système ne trouve pas le file spécifié."