使用Silverlight代理客户端为WCF服务确定通道中的错误

时间:2011-08-21 21:11:37

标签: silverlight wcf asynchronous proxy wcf-client

我正在使用异步模式为WCF服务创建Silverlight代理客户端:

public class ProductService : ClientBase<IProductService> {

    public event EventHandler<DataEventArgs<Product>> GetProductCompleted;

    public void GetProductAsync(string productName) {
        IAsyncResult asyncResult = Channel.BeginGetProduct(productName, GetProductCallback, null);
    }

    private void GetProductCallback(IAsyncResult asyncResult) {
        Product product = Channel.EndGetProduct(asyncResult);
        if (GetProductCompleted != null)
            GetProductCompleted(this, new DataEventArgs<Product>(product));
    }
}

如何在执行服务请求期间知道通道中是否发生错误?

1 个答案:

答案 0 :(得分:1)

EndGetProduct应该在调用时抛出错误,因此请在其周围放置一个try..catch