質問

ADO.NET Data Services を Adob​​e Flex アプリケーションのデータ ソースとして使用した人はいますか?もしそうなら、避けるべき成功例や悲劇はありますか?実際に使用した場合、セキュリティにはどのように対処しましたか?

役に立ちましたか?

解決

WebORB for .NET を使用して Flex リモート処理を実行し、サーバー上で DLINQ を使用します。WebORB で LINQ を使用する場合の注意点の 1 つは、WebORB が Reflection を使用して、Flex に返すオブジェクトのすべての関係を自動的に取得することです。LINQ は遅延読み込みを使用してリレーションシップを読み込むため、これにより重大な時間ペナルティが発生します。これを防ぐために、私は次のようなことをします。

DataContext のコンストラクターをオーバーライドし、次のコードを追加します。

this.DeferredLoadingEnabled = false;
DataLoadOptions dlo = new DataLoadOptions();
dlo.LoadWith<Order>(q => q.Payments);
dlo.LoadWith<Order>(q => q.Customer);
this.LoadOptions = dlo;

これにより、DataContext に対してリレーションシップの遅延読み込みを無効にするように指示し、遅延読み込みを行わずに必要なリレーションシップのみをロードするように具体的に指示します。こうすることで、WebORB によって Reflection による遅延読み込みが発生することがなくなり、Flex に転送されるリレーションシップの数が最小限に抑えられます。

これが何らかの形でお役に立てば幸いです。これは間違いなく、Flex/WebORB および LINQ を使用するときの小さな「落とし穴」の 1 つです。

他のヒント

はい、私たちは .Net Web サービスで Flex を広く使用しています。

Flex は .Net DataSet を処理できず、実際には複雑な XML タイプを使用することもできません。比較的単純な XML 出力を維持することが最善であることがわかりました。

ただし、これを実行すると、.Net Web サービスの出力を正常に処理できます。

<mx:WebService id="myDataService" showBusyCursor="true">
    <mx:operation name="WebMethodName" 
                  resultFormat="object" 
                  result="functionFiredOnComplete();">
</mx:operation>
</mx:WebService>

public function load():void
{
    myDataService.loadWSDL( "web method's wsdl" );
    myDataService.WebMethodName.send( params );
}

public function functionFiredOnComplete():void
{           
    // get data
    var myData:Object = myDataService.WebMethodName.lastResult;
    ...

彼は Web サービスではなく ADO.NET Data Services について尋ねました

flexは取得することのみができ、flexはhttp応答メッセージを理解していません

したがって、Flex が ADO​​.NET データ サービスと通信できるようにするには、次のいずれかを行う必要があります。
1.プロキシサーバーを使用しますが、自分で見つけるか構築する必要があります
2.受信リクエストを変更し、$method=MERGE などを使用します (プロキシと同じ)
3.別の as3 httpService クライアントを使用します。オープンソースの取り組みがいくつかあります

次に、データを投稿する方法を見つけなければなりませんが、JSON で新しいレコードを作成し、別のテーブルへのリンクを持つ ID を指定する場合、非常に時間がかかります。これは、整数を更新するだけではなく、リンク文字列を作成する必要があるため、あまり簡単ではないように感じられます。

もちろんそれは可能ですが、箱から出して実際に自分で作る必要があります。Flash Builder 4 には REST インポートが付属していることは知っています。これにより速度が向上する可能性がありますが、その経験はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top