1

Silverlight アプリから Web サービス (Amazon Web Services) を非同期で呼び出していますが、非同期呼び出しを開始した後、コールバック メソッドが実際にはトリガーされません。

コンソール アプリで別の Web サービス プロキシを設定しました。同期呼び出しを行い、同じ引数を使用して問題なく応答を取得できます。

これがブラウザ内から呼び出されるという事実に問題がある可能性がありますか? エラーはおろか、まったく応答がないため、どこから始めればよいかわかりません。

以下は私が使用しているコードです:

    private void btnQueryAmazon_Click(object sender, RoutedEventArgs e)
    {
        if (!string.IsNullOrEmpty(txtQuery.Text))
        {
            ItemSearch search = new ItemSearch();
            /// set authentication and search parameters
            AmazonService.AWSECommerceServicePortTypeClient service = new AmazonService.AWSECommerceServicePortTypeClient();

            service.ItemLookupCompleted += new EventHandler<AmazonService.ItemLookupCompletedEventArgs>(service_ItemLookupCompleted);
            service.ItemSearchAsync(search);
        }
    }

    void service_ItemLookupCompleted(object sender, AmazonService.ItemLookupCompletedEventArgs e)
    {
            txtError.Text = e.Result.Items.Count().ToString();
            grdItems.ItemsSource = e.Result.Items;
    }
4

1 に答える 1

1

さて、あなたの問題があります;)

サービスでItemSearchメソッドを呼び出しているように見えますが、ItemLookupメソッドを接続して処理しています。

私はいつもそれをします。

于 2009-06-12T22:28:28.027 に答える