C#之wsdl工具的使用

webservice 调用与生成的过程,其实都非常简单,有人说,现在都说改用WCF了。要我说啊,WCF是微软典型的败笔而已,明明有webapi方便、简繁、快捷。

俺在这里写写,只是为了记录一下,岁数大很容忘记东西,但凡高手直接绕过就好了。

这个东西好像是大象装冰箱分,也就是1和2嘛

1.生成客户端代码调用webservice代码

wsdl E:\WS.wsdl /out:WS.cs

这个生成代码和引用方式生成的代码几乎一样,代码这里就不卖弄了。这么干的理由也就是可以少一个引用动作而已。似乎有点先进性的感觉。

2.反过来生成服务端

wsdl /si C:\webserver.wsdl /out:D:\

服务端代码当然是一个接口,大概如下

​
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Serialization;

// 
// 此源代码由 wsdl 自动生成, Version=4.0.30319.17929。
// 


/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "4.0.30319.17929")]
[System.Web.Services.WebServiceBindingAttribute(Name="webserver", Namespace="http://localhost:8080/webserver.wsdl")]
[System.Xml.Serialization.SoapIncludeAttribute(typeof(WebSoeInfo))]
[System.Xml.Serialization.SoapIncludeAttribute(typeof(VarValue))]
public interface IWebserver {
    
    /// <remarks/>
    [System.Web.Services.WebMethodAttribute()]
    [System.Web.Services.Protocols.SoapRpcMethodAttribute("", RequestNamespace="urn:scada", ResponseNamespace="urn:scada")]
    [return: System.Xml.Serialization.SoapElementAttribute("result")]
    int UserLogin(string username, string password);
    
    /// <remarks/>
    [System.Web.Services.WebMethodAttribute()]
    [System.Web.Services.Protocols.SoapRpcMethodAttribute("", RequestNamespace="urn:scada", ResponseNamespace="urn:scada")]
    [return: System.Xml.Serialization.SoapElementAttribute("result")]
    VarValue[] ReadVarValue(string varNameList);
    
    /// <remarks/>
    [System.Web.Services.WebMethodAttribute()]
    [System.Web.Services.Protocols.SoapRpcMethodAttribute("", RequestNamespace="urn:scada", ResponseNamespace="urn:scada")]
    [return: System.Xml.Serialization.SoapElementAttribute("result")]
    int WriteVarValue(string varName, int waitTime, string value);

​

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值