次のシナリオを検討してください。
アプリケーション ドメイン 1:
public delegate bool Delegate1(class1 c1,string p);
class class1
{
public bool method1(Delegate1 d, out IEnumerable<string> partNumbers)
{
//Method body
}
}
AppDoamin2:
class x
{
public bool method2(Dictionary<string,string> x,out string[] returnValues)
{
class1Instance.method1(delegate(class1 cc,string pp){if(x.Key=="blaah") return False;},out temp);
}
}
IronPython スクリプト: メソッド 2 を呼び出します。
このアプローチは、appDomain2 のデリゲートがスタックの変数を使用しているため、シリアライゼーションの例外を与えています。
可能な解決策: デリゲート メソッドを ironpython スクリプトから appDomain2 のメソッドに渡し、Appdomain3 にそのまま渡します。
問題:これを行う方法は?これまで何も検索できませんでした。
注: .NET Framework 2 および ironpython 2.7.1 が使用されます。
PS 書式設定が不十分で申し訳ありません。