2012-03-18 11 views
0

SSIS(2008)の1つのスクリプトタスクエディタに2つのクラスを書くことはできますか?私は以下のようなグローバル変数にアクセスしようとしました。私は2つのクラスを作成し、コンパイルエラーは表示されませんが、私はクラス2のクラスScriptMainで割り当てられたクラス2のグローバル変数にアクセスできませんでした。提案してください。スクリプトタスク:2つのクラスを作成してグローバル変数にアクセス

Imports System 
Imports System.Data 

Class ScriptMain 

    Dts.Variables("var").Value = 2 

End Class 

Class class2 

    Dim var2 As String 

    var2 = Dts.Variables("var").Value 

End Class 

答えて

0

免責事項 - あなたはクラスの本体で薄暗いステートメントを使用することはできません

私は... SSISについて何も知らない - 彼らは.NETのメソッドにする必要があります。

ありクラスはいえインスタンス化されるときに呼び出されるコンストラクタ(新)と呼ばれる特別な方法は、ですので、

Imports System 
Imports System.Data 

Class ScriptMain 

    public sub new() 
     Dts.Variables("var").Value = 2 
    end sub 

End Class 

Class class2 

    public function GetGlobal() as string 
     Dim var2 As String 
     var2 = Dts.Variables("var").Value 
     return var2 
    end function 

End Class 

あなたはどこかDim x as new class2()を行う必要があると思い試してみて、あなたがx.GetGlobal()への呼び出しを行うことができます。 GetGlobalはインスタンス状態を使用しないので、それをsharedにするだけです。

それを超えると、あなたが具体的に達成しようとしていることは明らかではありません。

+0

ありがとうございます! Dwerner – user923499

関連する問題