2016-06-17 8 views
0

Ich versuche, meine eigene DLL in einem script compoment innerhalb ssis zu verwenden. Das normale Verfahren gibt mir einen Fehler: "could not load file or assembly 'xxx' or one of its dependencies. The system cannot find the file specified."Wie bekomme ich benutzerdefinierte DLLs in einer SSIS-Skriptkomponente?

Was ich noch versuchte, ist, ging ich zum Projekt -> Öffnen Sie im Explorer und legen Sie meine DLL in den Ordner bin, aber der gleiche Fehler auftritt.

fand ich this C# Code und konvertiert es zu vb.net:

<Microsoft.SqlServer.Dts.Tasks.ScriptTask.SSISScriptTaskEntryPointAttribute> _ 
Public Partial Class ScriptMain 
    Inherits Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase 
    Shared Sub New() 
     AppDomain.CurrentDomain.AssemblyResolve += New ResolveEventHandler(AddressOf CurrentDomain_AssemblyResolve) 
    End Sub 
    Private Shared Function CurrentDomain_AssemblyResolve(sender As Object, args As ResolveEventArgs) As System.Reflection.Assembly 
     If args.Name.Contains("ssisHelper") Then 
      Dim path As String = "c:\temp\" 
      Return System.Reflection.Assembly.LoadFile(System.IO.Path.Combine(path, "ssisHelper.dll")) 
     End If 
     Return Nothing 
    End Function 
End Class 

Aber ich habe nicht Micorosoft.SqlServer.Dts.**Tasks**. Wer kann mir helfen, entweder dieses Skript funktioniert oder kann eine andere Lösung, um meine DLL innerhalb der script compoment laufen zu bekommen?

+0

Eine kleine Randnotiz, sollte das Ereignisabonnement so getan werden: 'AddHandler AppDomain.CurrentDomain.AssemblyResolve, Addressof CurrentDomain_AssemblyResolve' –

+0

Wahrscheinlich ein [Duplikat] (http://stackoverflow.com/questions/11611165/add-third-party-dll-reference-in-ssssis-script-component/11614009#11614009) – billinkc

Antwort