我正在从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;
}
答案 0 :(得分:1)
嗯,这是你的问题;)
看起来你正在调用服务上的ItemSearch方法,但你正在连接并处理ItemLookup方法。
我一直这样做。