读书人

Silverlight调WebService封装客户代理

发布时间: 2012-03-06 20:47:55 作者: rapoo

Silverlight调WebService封装客户代理类Proxy的问题,不能同步
常规的方法调用WebService是同步的,可以在客户端封装一个代理类Proxy,然后整个客户端项目都通过这个Proxy调用WebSercie,方便,容易管理。
但是Silverlight调用WebSercie是异步的,这个Proxy怎么封装,如果不封装,将会写很多重复代码,怎么处理?

通常这样写:

C# code
private ServiceReference1.WebService1SoapClient wssc = new SilverlightApplication1.ServiceReference1.WebService1SoapClient();wssc.GetListCompleted += new EventHandler<SilverlightApplication1.ServiceReference1.GetListCompletedEventArgs>(wssc_GetListCompleted);wssc.GetListAsync(k);

但如果每个页面都这样写,也太麻烦了。。。
大家的项目中是怎么做的?

[解决办法]
1:创建一个页面基类,在页面基类中封装;
2:将异步方法转为同步;http://blog.csdn.net/luminji/archive/2010/02/02/5281944.aspx
[解决办法]
探讨
引用:
1:创建一个页面基类,在页面基类中封装;
2:将异步方法转为同步;http://blog.csdn.net/luminji/archive/2010/02/02/5281944.aspx


1、在页面基类中封装可以,但每个页面要用调的WebService的方法不一样啊,统一不了啊。

[解决办法]
怎么可能用同步?最多是搞一个Wrapper,把异步调用的操作习惯封装为看起来像同步方法吧

读书人网 >CAD教程

热点推荐