Web Services调用存储过程简单实例

       Web Services 主要利用 HTTPSOAP 协议使商业数据在 Web 上传输,SOAP通过 HTTP 调用商业对象执行远程功能调用,Web 用户能够使用 SOAP 和 HTTP通过 Web 调用的方法来调用远程对象.

       web services调用存储过程简单实例:仅供学习,简单易懂!SQLHelper调用。

  页面代码:

复制代码
<body>
    
<form id="form1" runat="server">
    
<div>
        
<asp:Button ID="btnGetResponse" runat="server" Text="get response" OnClick="btnGetResponse_Click" /><br />
        
<asp:Label ID="lblShow" runat="server" ></asp:Label>
    
</div>
    
</form>
</body>
</html>
复制代码

 

cs代码:

 

复制代码
public partial class WebServiceSample_Default : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    {
        
if (!IsPostBack)
        {
            ViewState[
"number"= 1;
        }
    }
    
protected void btnGetResponse_Click(object sender, EventArgs e)
    {
        WebService wss 
= new WebService();
        lblShow.Text 
= wss.ResponseInformation()+"  "+ViewState["number"].ToString();
        ViewState[
"number"= int.Parse(ViewState["number"].ToString()) + 1;
    }
}
复制代码

webservice.asmx

<%@ WebService Language="C#" CodeBehind="~/App_Code/WebService.cs" Class="WebService" %>

WebService.cs代码如下

复制代码
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;


using XX.Data;
using System.Data;
using System.Text;

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo 
= WsiProfiles.BasicProfile1_1)]
public class WebService : System.Web.Services.WebService
{

    
public WebService()
    {

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

    [WebMethod]
    
public string HelloWorld()
    {
        
return "Hello World";
    }
  
    [WebMethod]
    
public string ResponseInformation()
    {
        StringBuilder sb 
= new StringBuilder();
        System.Data.SqlClient.SqlParameter para 
=new System.Data.SqlClient.SqlParameter("@number",10);
        para.Direction 
= ParameterDirection.Input;
        DataSet ds 
= DBTool.ExecuteDataset(CommandType.StoredProcedure,"GetDataSam",para);
        
if (ds != null && ds.Tables[0].Rows.Count > 0)
        {
            
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                
if (sb.ToString() == "")
                {
                    sb.Append(ds.Tables[
0].Rows[0]["title"].ToString());
                }
                
else
                {
                    sb.Append(
"<br/>").Append(ds.Tables[0].Rows[i]["title"].ToString());
                }
            }
        }
        
return sb.ToString();
    }


}

复制代码

 

存储过程依旧是原来那个:

复制代码
create  procedure GetDataSam(
@number 
int 
)
as 
begin   
declare @str nvarchar(
200);
set   @str='select top '+cast(@number  as  nvarchar)+ 'title  from  zhq_in_content    order by  createdate   desc';
exec(@str);
end

复制代码

 

 

posted @   jasen.kin  阅读(3634)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示