Flex を使用して .Net メソッドを呼び出すと、リモート呼び出しでキャスト エラーが発生します。エラーは言う:
タイプ「FluorineFx.ASObject」のオブジェクトをタイプ com.mynamespace.MyAccessControlType にキャストできません
呼び出し元は flex で、サービスは .net で提供されます。両側の通信/ブリッジに FlourineFx を使用しています。
フレックスコールは次のようなものです:
public class SavePageDelegate
{
private var responder:IResponder;
private var service:RemoteObject;
public function SavePageDelegate(page:PageType, responder:IResponder):void
{
this.service = ServiceLocator.getInstance().SavePage(page);
this.responder = responder;
}
}
リモートの方法は次のとおりです。ページ オブジェクトは問題なく送信されていることに注意してください。ページ オブジェクトには、アクセス許可 (MyAccessControlType) の ArrayList (AccessControlList) があります。foreach を使用して要素にアクセスしようとすると、次のエラーがスローされます。
/* this is called from Flex*/
public string SavePage(PageType page){
...
InsertAccessControl(page.AccessControlList);
}
/* This is called from SavePage */
public void InsertAccesControl(System.Collections.ArrayList AccessControlList);
{
// This is the line where the error is triggered
foreach (com.mynamespace.MyAccessControlType item in AccessControlList)
{
...
}
}
これらのページを参照として使用しています: http://www.fluorinefx.com/docs/fluorine/typeconversion.html - Fluorine / Flex オブジェクトに有効な型キャストを示します
http://www.fluorinefx.com/docs/fluorine/classmapping.html - クラス マッピング用。