C# WebService创建、发布、调用的实例讲解

所属分类: 软件编程 / C#教程 阅读数: 111
收藏 0 赞 0 分享

Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。

Web service是一种可以接收从Internet或者Internet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。

webservice说明:

假设A是Client端,B是webservice服务端,用户通过http协议向服务器发送soap请求,webservice返回客户端XML格式的数据。

客户端由代理对象(proxy)负责与webservice的通信。所以在客户端使用webservice,完全和使用一个本地对象是一样的。

我们现在以一个简单的实例来说明。

一、首先创建Webservice工程,以VS2010为例,如果选择.Net Framework 4,则找不到Web服务应用程序,此时选择ASP.NET空Web应用程序。创建好空应用程序后,选择该工程右键添加Web服务。

创建好程序后默认会有一个HellWorld函数

a) WebService1.asmx文件中的代码

namespace WebApplication1
 { 
 [WebService(Namespace = "http://tempuri.org/")] // webservice命名空间 
 [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
 [System.ComponentModel.ToolboxItem(false)] 
 // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 
 // [System.Web.Script.Services.ScriptService] 
 public class WebService1 : System.Web.Services.WebService 
 { 
 [WebMethod] 
 public string HelloWorld() 
   { 
 return "Hello World";
 }
 }
 } 

b) 运行程序,如图1所示,列出了服务函数名,点击要调用的函数如图2所示,点击调用后出现图2第二张图所示返回函数值。

图1

图2

二. 发布WebService到IIS

打开IIS管理器,选择网站->右键添加网站

注:

(1)输入网站名称,应用池选择,选择程序运行需要的.Net FrameWork版本

(2)物理路径,选择上面WebService发布的程序的路径

(3)绑定,修改端口,端口不能其他程序使用过

发布完成后访问方式为:http://127.0.0.1:8666/Service.asmx 或 http://localhost:8008/Service.asmx如果出现下图所示,说明发布成功。

三、ASP.NET调用Web Service

首先,打开VS2005,打开"文件-新建-网站",选择"ASP.NET网站"。

然后先添加Web引用,把WebService引到当前的工程里面。方法是:在资源管理器中点击右键,选择添加Web 引用,调出对话框:

在URL中填入,前面写好的WebService运行后浏览器上面显示的地址(即:WebService发布后的访问地址 ),点击"前往"按钮,如上图,就会显示出所引用的WebService中可以调用的方法,然后点击"添加引用",就将webservice引用到了当前的工程里面 ,如下图,解决方案中会出现引进来的WebService文件

然后在后台写调用的代码,调用之前和使用其它的对象一样,

要先实例化,实例化的方法是

localhost.ServiceSoapClient service = new localhost.ServiceSoapClient();

然后就可以通过service来访问WebService里面提供的方法了。

在运行该程序调用的时候,WebService程序还必须启动,否则会报无法连接远程服务器的异常。

这样webservice的简单创建、发布、调用就完成了,图片来自网络,懒得去截图了。。。

以上这篇C# WebService创建、发布、调用的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

c#开发word批量转pdf源码分享

已经安装有Office环境,借助一些简单的代码即可实现批量Word转PDF,看下面的实例源码吧
收藏 0 赞 0 分享

c# xml API操作的小例子

这篇文章主要介绍了c# xml API操作的小例子,有需要的朋友可以参考一下
收藏 0 赞 0 分享

c#唯一值渲染实例代码

这篇文章主要介绍了c#唯一值渲染实例代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

淘宝IP地址库采集器c#代码

这篇文章主要介绍了淘宝IP地址库采集器c#代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C#在后台运行操作(BackgroundWorker用法)示例分享

BackgroundWorker类允许在单独的专用线程上运行操作。如果需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用BackgroundWorker类方便地解决问题,下面看示例
收藏 0 赞 0 分享

c#文本加密程序代码示例

这是一个加密软件,但只限于文本加密,加了窗口控件的滑动效果,详细看下面的代码
收藏 0 赞 0 分享

c#生成站点地图(SiteMapPath)文件示例程序

这篇文章主要介绍了c#生成站点地图(SiteMapPath)文件的示例,大家参考使用
收藏 0 赞 0 分享

C# 键盘Enter键取代Tab键实现代码

这篇文章主要介绍了C# 键盘Enter键取代Tab键实现代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm导出Excel方法介绍

在.NET应用中,导出Excel是很常见的需求,导出Excel报表大致有以下三种方式:Office PIA,文件流和NPOI开源库,本文只介绍前两种方式
收藏 0 赞 0 分享

C#串口通信程序实例详解

在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports,创建C#串口通信程序的具体实现是如何的呢?让我们开始吧
收藏 0 赞 0 分享
查看更多