温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

.NET C#怎么创建WebService服务

发布时间:2021-07-10 09:27:50 来源:亿速云 阅读:187 作者:小新 栏目:开发技术

小编给大家分享一下.NET C#怎么创建WebService服务,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

Web service是一个基于可编程的web的应用程序,用于开发分布式的互操作的应用程序,也是一种web服务

WebService的特性有以下几点:

1.使用XML(标准通用标记语言)来作为数据交互的格式。

2.跨平台性,因为使用XML所以只要本地应用可以连接网络解析XML就可以实现数据交换,比如安卓、IOS、WindowsPhone等都可以实现对Web service的数据交互。

3.基于HTTP协议,直接跨越防火墙,通用型强;

下面使用Visual Studio 2013(其他VS版本亦是如此)来创建一个简单Web service服务。

一、打开Visual Studio->文件->新建->网站

.NET C#怎么创建WebService服务

二、之后选择ASP.NET空网站,再点击“确定”

.NET C#怎么创建WebService服务

三、新建网站后你会看到解决方案管理器中看到一个web.config,待会我们可以通过配置这个文件来实现浏览器对WebService的远程调用。

现在,右键解决方案中的项目名添加一个WebService项目。

.NET C#怎么创建WebService服务

四、之后,你可以在项目模版中找到Web服务(ASMX),添加它!

.NET C#怎么创建WebService服务

五、创建之后在APP_Code文件夹中创建一个WebService.cs文件

在网站根目录下会同时创建一个WebService.asmx文件

这两个文件中WebService.cs负责逻辑部分,WebService.asmx提供服务部分。将来引用WebService服务时将直接引用WebService.asmx文件来调用WebService服务,服务的执行部分就是WebService.cs文件

现在打开WebService.cs文件来编辑逻辑部分实行一个简单的《客户端调用web服务实现一个简单的加法运算,并返回以字符串给客户端运算结果》

/*
  Web.Services.cs文件
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {

  public WebService () {

    //如果使用设计的组件,请取消注释以下行 
    //InitializeComponent(); 
  }

  /// <summary>
  /// 方法上头的[WebMethod]是声明一个web服务方法,如果你想写个方法能让客户端调用并返回结果就必须在方法上头标注[WebMethod]
  /// 如果是只负责逻辑运算或私有方法,并不打算给客户端结果,只给类方法内部调用就无需声明[WebMethod]
  /// </summary>
  /// <param name="a"></param>
  /// <param name="b"></param>
  /// <returns>将运算结果转换成字符串返回</returns>
  [WebMethod]
  public string HelloWorld(int a, int b) {
    int result = a + b;
    return result.ToString();
  }  
}

上面的代码写了一个基本的方法供远程调用,将cs文件保存后,一个简单的web服务就创建了!

下面我们启动这个项目,用浏览器查看微软为我们定义测试的调用页面:

.NET C#怎么创建WebService服务

在这里我们可以看到我们写的Hello方法可以调用了,我们单击进入这个方法进入调用调试页面:

.NET C#怎么创建WebService服务

输入参数,我们写的是一个简单的加法运算,参数便是我们写的HelloWorld方法的参数a和b,我们输入两个整数点击调用,出现如下结果:

.NET C#怎么创建WebService服务

下面是web服务返回的结果,其中133就是HelloWorld参数a+b返回的结果:

<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">133</string>

到这里,以后我们想要调用一个web服务就可以通过以上方式把客户端从服务器获取数据,访问:"主机名/web服务名.asmx"就可以调用了。

得到的数据是个XML,所以客户端得到数据后需要客户端解析XML文件。

注意:以上创建在浏览器调用的web服务仅供本地计算机调试使用,需要配置web.config(之前提到过)才能实现远程调用调试

如果不配置,在远程调用会出现:测试窗体只能用于来自本地计算机的请求解决 的问题。

如需远程调用可以参考一下方法:

在网站的解决方案的下方找到web.config

.NET C#怎么创建WebService服务

打开后添加如下配置即可:

<system.web> 
  <webServices> 
   <protocols> 
    <add name="HttpGet"/> 
    <add name="HttpPost"/> 
   </protocols> 
  </webServices>  
<system.web>

以上是“.NET C#怎么创建WebService服务”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI