Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

MSSQL 2012, das CLR-Trigger für WCF erstellt, schlägt fehl

Wir haben vor einem Monat ein Problem mit Microsoft zu demselben Problem eingereicht. Meine Vermutung ist, dass Sie System.IdentityModel.dll nicht laden können, was eine Abhängigkeit der System.ServiceModel-Assembly ist. Microsoft hat uns mitgeteilt, dass dies zwar in SQL 2005 und SQL 2008 funktionierte, dass es sich jedoch um einen bekannten Fehler in SQL 2012 handelt und dass sie ihn nicht vor SQL 2014 beheben werden.

Dass dies noch nicht weithin bekannt ist, überrascht mich ein bisschen, abgesehen davon, dass 2012 noch sehr neu ist. Dies bedeutet jedoch, dass Sie nicht die bewährte Interprozesskommunikationstechnologie von Microsoft in SQL CLR (WCF) verwenden können. Beachten Sie, dass .NET-Remoting auch deshalb nicht verfügbar wäre, weil es auch die ServiceModel-Assembly verwendet.

Ich hoffe auf eine genauere Klärung dessen, was wir stattdessen verwenden sollten. Ich prüfe, ob es eine Möglichkeit gibt, eine WSE-basierte SQL CLR zu schreiben, bin aber nicht sehr begeistert von der Aussicht.

Ich bin ziemlich unglücklich darüber und hoffe, dass andere, die ihre Stimme erheben, darauf hinweisen, dass dies ein echtes Problem ist und als inakzeptabel betrachtet werden sollte.