Kann die Indizierung mit [] nicht auf einen Ausdruck vom Typ anwenden

8

Ich erstelle ein SSIS-Paket und möchte ein Skript einfügen, das überprüft, ob eine Datei vorhanden ist, bevor die Datei abgerufen und in einer Tabelle gespeichert wird.

Ich habe drei separate Variablen, die ich eingerichtet habe:

fileExistFlag Int32 0

fileName String check.txt

folderPath String C:\

Mein C # -Code sieht so aus, wo ich nachschaue:

%Vor%

Wenn ich versuche, mein Skript zu kompilieren, erhalte ich den folgenden Fehler:

Cannot apply indexing with [] to an expression of type 'Microsoft.SqlServer.Dts.Runtime.Variables für alle vier Instanzen.

Wie kann ich das Problem lösen?

Aktualisierter Code:

%Vor%     
SearchForKnowledge 25.06.2014, 13:15
quelle

3 Antworten

3

Seltsamerweise scheint dieser Indexer zu existieren Wenn es jedoch nicht funktioniert, können Sie möglicherweise eine Erweiterungsmethode verwenden:

%Vor%

und verwenden:

%Vor%

stattdessen.

    
Marc Gravell 25.06.2014, 13:22
quelle
13

Dies ist eine bekannte BUG in SQL Server BIDS 2005/2008 nach der Installation einer späteren Version von SSIS Seite an Seite. Zum Beispiel, wenn Sie ein SSIS 2008-Paket entwickeln und dann SSIS 2012 installieren.

Eine Problemumgehung besteht darin, die Datei "Microsoft.SQLServer.ManagedDTS.dll" im Pfad zu verschieben: "C: \ Programme (x86) \ Microsoft SQL Server \ 110 \ SDK \ Assemblies" zu einem Sicherungsordner, dann übernehmen die Gebote den Verweis aus dem Pfad "C: \ Windows \ Assembly \ GAC_MSIL \ Microsoft.SqlServer.ManagedDTS \ 10.0.0.0__89845dcd8080cc91 \ "

Aber es scheint nicht für alle Fälle zu funktionieren.

Quelle:

Ссылка

Ссылка

    
Guilherme 15.07.2014 04:52
quelle
1

Verwenden Sie im Fenster Referenzen hinzufügen die Option Durchsuchen, und suchen Sie folgende DLL: C: \ Programme (x86) \ Microsoft SQL Server \ 100 \ SDK \ Assemblies \ Microsoft.SQLServer.ManagedDTS.dll

    
Gabriel G 08.01.2015 21:25
quelle

Tags und Links