C# 中WebService返回类型(string,int,bool,DataSet,class实体类)示例

这篇博客详细介绍了如何在C#中实现WebService服务,提供多种返回类型,包括基本数据类型(如string、int、bool)以及复杂类型如DataSet和自定义的可序列化类。通过示例代码展示了如何创建和调用这些服务方法。
摘要由CSDN通过智能技术生成

 

<script type="text/javascript"></script> <script type="text/javascript"></script>
    WebService 服务可以返回任何可序列化的对象.本文代码给出返回基本数据类型及实体类结构示例和调用代码示例.
WebService代码如下:
  1. using System;
  2. using System.Collections;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Diagnostics;
  6. using System.Web;
  7. using System.Web.Services;
  8. namespace StudentServer
  9. {
  10.  /// <summary>
  11.  /// 本类实现WebService服务
  12.  /// 提供对各种数据类型的返回例子
  13.  /// 包括:
  14.  ///  基本数据类型(string,ini,bool,long,float等)
  15.  ///  类结构型(class),必须是可序列化的类
  16.  ///  DataSet类型
  17.  /// </summary>
  18.  public class Demo : System.Web.Services.WebService
  19.  {
  20.   public Demo()
  21.   {
  22.    //CODEGEN: 该调用是 ASP.NET Web 服务设计器所必需的
  23.    InitializeComponent();
  24.   }
  25.   #region 组件设计器生成的代码
  26.   
  27.   //Web 服务设计器所必需的
  28.   private IContainer components = null;
  29.     
  30.   /// <summary>
  31.   /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  32.   /// 此方法的内容。
  33.   /// </summary>
  34.   private void InitializeComponent()
  35.   {
  36.   }
  37.   /// <summary>
  38.   /// 清理所有正在使用的资源。
  39.   /// </summary>
  40.   protected override void Dispose( bool disposing )
  41.   {
  42.    if(disposing && components != null)
  43.    {
  44.     components.Dispose();
  45.    }
  46.    base.Dispose(disposing);  
  47.   }
  48.   
  49.   #endregion
  50.   // WEB 服务示例
  51.   // HelloWorld() 示例服务返回字符串 Hello World
  52.   // 若要生成,请取消注释下列行,然后保存并生成项目
  53.   // 若要测试此 Web 服务,请按 F5 键
  54.   /// <summary>
  55.   /// 字符串型
  56.   /// </summary>
  57.   /// <returns>Hello World</returns>
  58.   [WebMethod]
  59.   public string HelloWorld()
  60.   {
  61.    return "Hello World";
  62.   }
  63.   /// <summary>
  64.   /// 整型
  65.   /// </summary>
  66.   /// <returns>Int</returns>
  67.   [WebMethod]
  68.   public int GetInt()
  69.   {
  70.    return 1234;
  71.   }
  72.   
  73.   /// <summary>
  74.   /// 布尔型
  75.   /// </summary>
  76.   /// <returns>Bool</returns>
  77.   [WebMethod]
  78.   public bool GetBool()
  79.   {
  80.    return true;
  81.   }
  82.   /// <summary>
  83.   /// 返回实体类
  84.   /// 必须是已序列化的类
  85.   /// </summary>
  86.   /// <returns>学生类</returns>
  87.   [WebMethod]
  88.   public Student GetStudent()
  89.   {
  90.    Student stu = new Student();
  91.    stu.Name = "张三";
  92.    stu.Age = 25;
  93.    stu.Sex = true;
  94.    return stu;
  95.   }
  96.   /// <summary>
  97.   /// 返回DataSet数据类型
  98.   /// </summary>
  99.   /// <returns>DataSet</returns>
  100.   [WebMethod]
  101.   public DataSet GetDataSet()
  102.   {
  103.    DataSet ds = new DataSet();
  104.    return ds;
  105.   }
  106.  }
  107.  #region 定义可序列化类
  108.  /*
  109.   * 为避免Framework1.1中返回实体类报错“请求格式无法识别。”
  110.   * 要在Web.Config文件中<system.web>添加以下内容:
  111.   * <webServices>
  112.    <protocols>
  113.    <add name="HttpPost" />
  114.    <add name="HttpGet" />
  115.    </protocols>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值