0

2 つのスクリプト コンポーネントがあります。最初にリストを作成し、それを Variables.customClasslist (System.Object) に保存します。2 番目のスクリプト コンポーネントでこの変数を読み込もうとすると、SSIS でエラーが発生します。

List<CustomClass> CustomClassList = (List<CustomClass>)this.Variables.CustomClassList;

エラー:

[A]System.Collections.Generic.List1[CustomClass] は [B]System.Collections.Generic.List`1[CustomClass] にキャストできません。

タイプ A は、場所「C:\Windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0」の「LoadNeither」コンテキストの「mscorlib、Version=2.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089」から発生します。 .0__b77a5c561934e089\mscorlib.dll'.

タイプ B は、場所「C:\Windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0」の「LoadNeither」コンテキストの「mscorlib、Version=2.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089」から発生します。 .0__b77a5c561934e089\mscorlib.dll'.

おそらく私の customClass を ScriptComponent に追加することが問題の原因です:

        public class ScriptMain : UserComponent
    {
    
        public override void PreExecute()
        {
            ...
        }
    
        public override void PostExecute()
        {
           ...
        }
    
        public override void CreateNewOutputRows()
        {
         List<CustomClass> CustomClassList = (List<CustomClass>)this.Variables.CustomClassList;
        }
    ...
    public class CustomClass
      { 
       some variables {get; set} 
       ect.
       ...
      }
 }

どうすれば適切に行うことができますか?

4

0 に答える 0