c#调用WebService

         接口无处不在,诸如Http、webapi、webservice等等,接口在调用的时候,免不了会处理到参数,最常用的会有post、get、put 方式等等。

这里介绍下调用WebService,新建一Web空项目,然后添加新项--Web服务(ASMX)后, 打开MyWebService.asmx (命名)文件 ,添加如下3个方法

        [WebMethod]
        public string HelloWorld1()
        {
            return "Hello World";
        }


        [WebMethod]
        public string HelloWorld2(int a)
        {
            return (2 * a).ToString();
        }


        [WebMethod]
        public string HelloWorld3(int a,string[] strs)
        {
            return (strs.Length).ToString();
        }

然后点击发布,最后在IIS上部署,需要注意net 版本设置为4.0

然后在功能视图中设置下默认文档,如果提示配置文件失败,则点击配置文件,添加以下代码,直接指定默认目录即可

  <system.webServer>
    <defaultDocument>
      <files>
        <add value="MyWebService.asmx" />
      </files>
    </defaultDocument>
    <directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension" />
  </system.webServer>

点击浏览网站,出现如下界面即表明IIS 网站部署成功。

 

接下来,新建一Winform项目,调用以上3个方法,点击引用,右键-添加服务引用,可以通过输入网站发布的地址点击按钮“转到”,或者直接点击发现进行搜索(同一项目工程下)

 接下来,就是调用接口的用例 ,注意:申明服务引用时,客户端名称为添加服务引用界面的红框值

由图可知,HelloWorld3 的方法参数原本是 string[] , 在这里变成了 ArrayOfString ,按照这种规则,传递数组的参数时,如红框中定义的那样去赋值,然后进行调用

 

posted @ 2018-08-31 23:22  郎中令  阅读(4974)  评论(0编辑  收藏  举报