C# WebService发布与调用方法(转)

Web Service是可操作的分布式应用程序。它以SOAP作为基本通信协议,使用HTTPXML进行可以穿越防火墙的自由通信。

错误提示:

* 出现 访问 IIS 元数据库失败

* iis 无法显示XML

解决:开始->程序->Microsoft Visual Studio 2005>Visual StudioTools中打开命令行,输入命令: aspnet_regiis -i 这样就会重新注册.net

另还需在虚拟目录上打开属性对话框,点击ASP.NET属性页在“Asp.net version”项选择相应的Asp.net版本(1.1或者2.0)

* 无权限问题

因为我们现在用的都是NTFS格式的硬盘,把Everyone用户选择上或者在IIS中把允许匿名访问勾上

* Window系统集成用户去掉勾选

1.首先添加新项---Web服务---*.asmx

同时在App_Code文件夹下增加了一个*.cs文件

1.          WebMethod]  

2.          public string[] GetHotSearchByKeywords  

3.          (string keyword)   

4.          {  

5.          return SearchKeywordManager.GetHotSearchByKeywords  

6.          (keyword);  

7.          }  

8.          [WebMethod]Web Service为我们提供的特性,  

9.          它表示下面的方法是 Web 方法,允许Web使用SOAP调用该方法  

10.      一个Web Service文件中可以有多个[WebMethod]  

11.      一个[WebMethod]只能对它下面的方法有效  

写完以后,可以直接打开这个文件进行测试,成功后,即可发布

2.C# webService发布

C# webService发布网站---创建虚拟目录---浏览WebService页面---测试WebService方法

在发布的时候有可能会出现一点小问题,上面是出错的状况

打开WebService的那个网址,就是要发布的WebServiceURL

3.C# WebService调用

添加Web引用---实例化WebService类---执行WebService方法

WebService可能在本项目、非本项目、甚至在异地被调用

*添加WebService引用

*URL处填写发布的WebService网址,单击前往,就会看到我们发布的WebService方法

*可以改一下WebService的引用名

C# WebService调用这个方法

引用名.类名s=new引用名.类名();

*添加完引用后,同时会看到App_WebReferences文件夹下已经添加了WebService的相关文件

*.disco

*.discomap

*.wsdl

 

原文地址:https://www.cnblogs.com/quietwalk/p/1822520.html