手把手教你在.NET中创建Web服务实现方法

  最近发现在.NET平台下使用Web服务还是很简单的。

  下面举个在.NET平台下创建Web服务的简单例子。首先用Visul Studio .Net创建一个C# 项目Asp.Net Web服务程序,源代码如下:

  

复制代码 代码如下:

  using System;

  using System.Collections;

  using System.ComponentModel;

  using System.Data;

  using System.Diagnostics;

  using System.Web;

  using System.Web.Services;

  namespace author

  {

  /// <summary>

  /// Service1 的摘要说明。

  /// </summary>

  public class Service1 : System.Web.Services.WebService

  {

  public Service1()

  {

  //CODEGEN: 该调用是 ASP.NET Web 服务设计器所必需的

  InitializeComponent();

  }

  #region 组件设计器生成的代码

  //Web 服务设计器所必需的

  private IContainer components = null;

  /// <summary>

  /// 设计器支持所需的方法 - 不要使用代码编辑器修改

  /// 此方法的内容。

  /// </summary>

  private void InitializeComponent()

  {

  }

  /// <summary>

  /// 清理所有正在使用的资源。

  /// </summary>

  protected override void Dispose( bool disposing )

  {

  if(disposing && components != null)

  {

  components.Dispose();

  }

  base.Dispose(disposing);

  }

  #endregion

  // WEB 服务示例

  // HelloWorld() 示例服务返回字符串 Hello World

  // 若要生成,请取消注释下列行,然后保存并生成项目

  // 若要测试此 Web 服务,请按 F5 键

  // [WebMethod]

  // public string HelloWorld()

  //{

  // return "Hello World!";

  //}

  }

  }

  这些代码都是系统自动生成的,从这里可以看到,普通的方法添加了WebMethod属性后就成了Web方法了。下面给这段代码添加一个访问SQL Server数据库的方法,代码如下:

  

复制代码 代码如下:

  [WebMethod]

  public DataSet DataVisit(string id)

  {

  string mySelectQuery = "Select au_id, au_fname, au_lname From authors where au_id != '"+id+"'";

  string myConn = @"server=localhost; uid=sa; database=pubs";

  SqlConnection myConnection = new SqlConnection(myConn);

  SqlCommand myCmd = new SqlCommand(mySelectQuery, myConnection);

  myConnection.Open();

  SqlDataAdapter adapter = new SqlDataAdapter();

  adapter.SelectCommand = myCmd;

  DataSet myDs = new DataSet();

  adapter.Fill(myDs, "author_name");

  myConnection.Close();

  return myDs;

  }

  这样就创建了一个Web服务了,在Web应用程序里就可以通过添加“Web引用”来使用这个服务了。