用IE的Web服务建立ASP.NET应用程式(二)

2008-02-23 08:21:07来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

[WebMethod]

上面的方法名称告诉我们,GetEmpDetailsByEmpID把employeeID作为参数并返回XmlDocument形式的雇员周详信息。


  publicXmlDocumentGetEmpDetailsByEmpID(intemployeeID)
  {
  stringconnString=System.Configuration.ConfigurationSettings.
  AppSettings["connectionString"];

上面的代码行使用ConfigurationSettings类的AppSettings属性从web.config文档的<appsettings>部分检索连接字符串。在web.config文档中连接字符串是这样定义的:


  <appSettings>
  <addkey="connectionString"
  value="server=localhost;uid=sa;pwd=;database=Northwind"/>
  </appSettings>

下面一行代码建立了SqlConnection对象的一个实例,给他传递了用于建立数据库连接的连接字符串:

SqlConnectionsqlConnection=newSqlConnection(connString);

接着您把任何的可执行代码封装在一个try...catch代码块中以处理执行后面的语句时可能发生的任何错误:


  try
  {
  DataSetemployeeDataset=newDataSet("EmployeesRoot");
  SqlDataAdapteradapter=newSqlDataAdapter();

下一步,您建立了SqlCommand对象的一个实例,给他的构造函数传递您希望执行的SQL语句和前面步骤中建立的SqlConnection对象:

SqlCommandcommand=newSqlCommand("Select*fromEmployeesWhereEmployeeID=" employeeID.ToString(),sqlConnection);

接着您把SelectCommand属性配置为适当的值,表明您希望执行一个SQL语句:

//配置SqlCommand对象的属性

command.CommandType=CommandType.Text;

接着把SqlDataAdapter对象的SelectCommand属性配置为前面建立的SqlCommand对象:

adapter.SelectCommand=command;

现在使用Fill方法,通过在数据源上执行前面指定的SQL语句从数据源检索数据:

//用存储过程返回的值填充数据集

adapter.Fill(employeeDataset,"Employees");

一旦雇员信息成为数据集形式的,您就能够检索他的内容,并把他作为参数传递到XmlDocument对象的LoadXml方法中。最后,把该XmlDocument对象返回到该Web服务的调用者:


  XmlDocumentxmlDoc=newXmlDocument();
  xmlDoc.LoadXml(employeeDataset.GetXml());
  returnxmlDoc;
  }
  catch(Exceptionex)
  {
  throwex;
  }

在最后的代码块中,您检查了State属性以验证Connection(连接)是否仍然是打开的。假如连接仍然是打开的,您就通过调用该连接对象的Close方法关闭他:


  finally
  {
  if(sqlConnection.State==ConnectionState.Open)
  {
  sqlConnection.Close();
  }
  }
  }

现在您已建立了Web服务了,能够用鼠标右键点击EmployeeService.asmx文档并选择Build(建立)和Browse(浏览)来测试他的功能。您得到的屏幕应该和下面的类似:

点击上面的屏幕中的方法名称(GetEmpDetailsByEmpID)将显示下面的屏幕:

假如您输入雇员id并点击Invoke(调用)来调用该Web服务方法,您将得到下面的输出:

现在您已测试了该Web服务了,您应该使用Web服务行为从ASP.NET页面中调用他来试验他的功能了。

在ASP.NET页面中如何使用Web服务行为调用Web服务

在Web页面中使用Web服务行为的第一步是使用类似下面的语法把他嵌入页面代码:

<divid="service"style="BEHAVIOR:url(webservice.htc)"></div>

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 用IE的Web服务建立ASP.NET应用程式(一)

下一篇: 用IE的Web服务建立ASP.NET应用程式(三)