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

SQL Server:CREATE ASSEMBLY für Assembly „Test“ ist fehlgeschlagen, weil Assembly „Test“ fehlerhaft oder keine reine .NET-Assembly ist.

Es ist nicht möglich, eine C++/CLI-Assembly im gemischten Modus in SQL Server zu laden.

Sie können nur eine "reine" C++/CLI-Assembly laden:

Es kann jedoch einen Weg geben, dies zu umgehen. Verwenden Sie P/Invoke in Ihrer C#-Datei. Dies entspricht dem Schreiben eines C++/CLI-Assembly-Wrappers im gemischten Modus, denn wenn CLR Code ruft native auf Code in Ihrer Assembly, führt es einen impliziten P/Invoke aus (Lassen Sie mich wissen, ob dies für Sie funktioniert).

Warum verhindert der SQL-Server, dass Assemblys im gemischten Modus geladen werden?

Das ist meine Theorie:

Wenn jemand aus dem ursprünglichen Microsoft-Designteam die Lücken ausfüllen kann, wäre ich sehr neugierig!