导航

通俗易懂解释 Webservice proxy

Posted on 2010-07-21 14:27  Hahappyppy  阅读(468)  评论(0编辑  收藏  举报

刚接手一个WebService项目(以前也没弄过WebService),对WebService的了解仅限于“只是远程的一些类和方法而已”。
可今天发现一些问题,感觉有点困惑,还请WebService大鸟指点一二,谢谢!

1.什么时候需要用到WebService代理类?
>> 呵呵,这个问题是不是有点让人郁闷?为什么有这个问题呢?
>> 当前整个项目就是WebService项目(有3个*.asmx),可发现竟然有两个当前项目中的WebService的代理类,而且均被使用,这是为什么?他为什么要这样做?
>> 难道WebService代理类不只是在客户端调用远程WebServcie需要时使用的么?

2.WebService代理类有什么作用?
>> 晕了,这个问题就更郁闷了。
>> 还是由第1个问题引起的困惑:WebService代理类就是把远程的方法本地化吧?可以这么理解么?

3.如何生成WebService代理类?
>> 这个问题也有点奇怪。可还是有些题外的困惑:
>> 据我所知有两个方法:
(1)添加web引用,这时会在web引用下生成一个Reference.cs文件,这个便是这个WebService的代理类。
(2)通过wsdl.exe工具生成
>> 疑问:(1)这个方法生成的代理类代码好像有不少的区别?只是描述得不同么?
(2)第1个方法不是很简单么?为什么还有第2个方法,第2个方法有什么特别之处么?
(3)大家知道在第1个方法中可以在配置文件中更改WebService的部署地址,如果是使用第2个方法,然后编译成DLL之后,如何动态更改其部署地址呢?