C# アプリケーションを使用して何らかの作業を行い、結果をサービス経由で AX に送り返しています。
AX でいくつかのクラスを作成し、それらのインスタンスを C# で使用してから、従来の配列を使用してオブジェクトを送り返します。
AXで私はaのものを受け取り、System.Collections.ArrayList
ここに私の質問があります:
このコレクションを繰り返し処理して、オブジェクトの種類を確認するにはどうすればよいですか?
for (...)
{
if (arr[i] is SalesLineCSharp)
{
}
else if (arr[i] is SalesTableCSharp)
{
}
//etc....
}
のようなものis
かas
?
私はちょうど例を作り、これを試しました..
info(strFmt("%1", classId2Name(classIdGet(arr.get_Item(i)))));
実際、カスタム型の場合はクラスの名前を取得し、文字列と int の場合は CLRObject を取得しますが、これは見栄えがよくありません。
これを達成するためのよりクリーンな方法はありますか?