2

Adobe Flex アプリケーションのデータ ソースとして ADO.NET Data Services を使用した人はいますか? もしそうなら、避けるべきサクセスストーリーや悲劇はありますか? 使用したことがある場合、どのようにセキュリティを処理しましたか?

4

4 に答える 4

3

私は WebORB for .NET を使用して Flex Remoting を実行し、サーバーで 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 つです。

于 2008-09-05T14:06:47.973 に答える
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;
    ...
于 2008-09-08T11:54:46.687 に答える
0

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

于 2009-04-18T10:26:16.377 に答える
0

Flex は GET と POST しか実行できません Flex は HTTP 応答メッセージを理解できません

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

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

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

于 2009-07-23T17:41:15.987 に答える