sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Server anpassad CLR misslyckas med fel Kunde inte ladda filen eller sammansättningen eller något av dess beroenden. Systemet kan icke finna den specificerade filen.

Det du försöker göra stöds inte av SQL Servers CLR-värd. CLR inom SQL Server är mycket begränsad för att förhindra att SQL Server destabiliseras eftersom den fungerar annorlunda än appar som körs på operativsystemet. Så det finns en mycket begränsad uppsättning DLL-filer som stöds (dvs. verifierade att fungera och garanterat fortsätta fungera över uppdateringar till .NET). WindowsBase är inte en av dem så du måste ladda den manuellt som UNSAFE till SQL Server. Men det lämnar dig med antingen problemet som du stötte på av versionen i huvud-GAC-ändringen (DLL-filer som är gemensamma mellan GAC och SQL Servers CLR-värd måste vara samma version), eller ännu värre, om DLL-filen blir "blandad" (både ohanterad C++ och hanterad kod) och är inte längre "ren". I så fall kommer den nya versionen inte att laddas och den gamla versionen får felet "fel version" så du har lite arbete att göra.

För mer detaljerad information, se följande artiklar/dokumentation:

Den uppsättningen länkar är hämtad från avsnittet "Ytterligare läsning" i en artikel jag skrev:Trappa till SQLCLR nivå 5:utveckling (med .NET inom SQL Server) .

För mer information om att arbeta med SQLCLR i allmänhet, besök min webbplats:SQLCLR Info




  1. Tankar om SQL Server 2019 Editions

  2. Skillnad mellan var och och klausul i join sql-fråga

  3. SQL Server BIT Datatype – Ultimate Guide

  4. Fysisk plats för FILESTREAM-data