Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

SQL Server:CREATE ASSEMBLY para o assembly 'Test' falhou porque o assembly 'Test' está malformado ou não é um assembly .NET puro.


É impossível carregar um assembly C++/CLI de modo misto no SQL Server.

Você só pode carregar um assembly C++/CLI "puro":



No entanto, pode haver uma maneira de contornar isso. Use P/Invoke em seu arquivo C#. Isso é equivalente a escrever um wrapper de assembly C++/CLI de modo misto, porque quando CLR código chama native código em seu assembly, ele executa um P/Invoke implícito (deixe-me saber se isso funciona para você).

Por que o SQL Server impede que assemblies de modo misto sejam carregados?


Esta é a minha teoria:

Se alguém da equipe de design original da Microsoft puder preencher as lacunas, ficaria muito curioso!