正在阅读:.net学习:WSE使用总结.net学习:WSE使用总结

2004-02-14 09:34 出处:CSDN 作者:rottenapple 责任编辑:linjixiong

  由于随时都会有新的WebService被加入,因此如果我们利用添加Web引用的方式加入Web Services,那么就把程序写得很死,失去了灵活性和扩展性。因此,我们需要由程序根据WebServices的WSDL来生成proxy,并编译成相应的DLL。这里,我们可以人为的定义一个ServiceID作为主键来唯一指定一个WebServices。在实际开发中,我们将使用Proxy,Factory设计模式来进行系统设计,将不同的WDSL的Proxy的生成,Proxy的构造封装成相对独立的模块。我们将使用WSDL.exe应用程序,以及.net reflecting(反射)的功能 实现。

  在调用WebService或者接收返回信息的时候,我们可能需要加入一些额外的东西,例如身份认证,定制的SoapHeader,加密等操作,这里我将使用微软提供的WSE1.0来实现。具体如何实现可以参考微软提供的quickstart的例子。其包含在WSE1.0sp1的下载包中,具体位置如下:

  http://www.microsoft.com/downloads/details.aspx?FamilyId=06255A94-2635-4D29-A90C-28B282993A41&displaylang=en
 
  2.2 proxy 的产生以及使用

  1. 根据WSDL自动生成proxy文件(PrxoyFactory,使用WSDL.EXE)

  可以自己制作一个工具,用来根据提供的WSDL地址生成proxy的cs文件。主要代码如下所示:

  string parameter = WSDLUrl;

  parameter += " /l:C#";

  parameter += " /n:" + ServiceID;                                                   

  parameter += " /o:" + Constants.LIBRARY_PATH + "\\" + ServiceID + ".cs";     

        // Use serviceID as output file name

  try

  {

  ProcessStartInfo startInfo = new ProcessStartInfo(Constants.WSDL_PATH, parameter);

键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品