WebServices调用存储过程

王朝c#·作者佚名  2006-12-16
宽屏版  字体: |||超大  

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Diagnostics;

using System.Web;

using System.Web.Services;

using System.Data.OleDb;

using System.Web.Services.Protocols;

namespace SFXTWebService

{

/// <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 键

#region SFQD

[WebMethod]

public DataSet GetProcedureSFQD(string strp_lsh,out string strp_zt)

{

string strDBConnection = '';

strDBConnection = System.Configuration.ConfigurationSettings.AppSettings['ConnDBString'];

OleDbConnection oleConn = new OleDbConnection(strDBConnection);

oleConn.Open();

OleDbCommand oleComm = new OleDbCommand('SFXT.SP_SF_BANK_SFQD',oleConn);//调用存储过程的方法

oleComm.CommandType = CommandType.StoredProcedure;//存储过程名称

try

{

//in参数

oleComm.Parameters.Add(new OleDbParameter('p_lsh',OleDbType.VarChar,50)).Value = strp_lsh;

//out参数

oleComm.Parameters.Add(new OleDbParameter('p_zt',OleDbType.VarChar,50));

oleComm.Parameters['p_zt'].Direction = ParameterDirection.Output;

oleComm.ExecuteNonQuery();//执行存储过程

//赋值

strp_zt = oleComm.Parameters['p_zt'].Value.ToString();

string str1 = oleComm.Parameters['p_zt'].Value.ToString();

DataSet ds = new DataSet();

DataTable table1 = new DataTable();

ds.Tables.Add(table1);

ds.Tables[0].Columns.Add('p_zt');

DataRow dr = ds.Tables[0].NewRow();

dr[0] = str1;

ds.Tables[0].Rows.Add(dr);

return ds;

}

catch(Exception)

{

strp_zt = '';

return null;

}

finally

{

oleConn.Close();

oleConn.Dispose();

}

}

#endregion

#region YSF

[WebMethod]

public DataSet GetProcedureYSF(string strp_lsh,string strp_YKZJE,string strp_CSDWDM,string strp_YKSH,out string strp_zt,out string strp_errordesc)

{

string strDBConnection = '';

strDBConnection = System.Configuration.ConfigurationSettings.AppSettings['ConnDBString'];

OleDbConnection oleConn = new OleDbConnection(strDBConnection);

oleConn.Open();

OleDbCommand oleComm = new OleDbCommand('SFXT.SP_SF_BANK_YSF',oleConn);//调用存储过程的方法

oleComm.CommandType = CommandType.StoredProcedure;//存储过程名称

try

{

//in参数

oleComm.Parameters.Add(new OleDbParameter('p_lsh',OleDbType.VarChar,50)).Value = strp_lsh;

oleComm.Parameters.Add(new OleDbParameter('p_YKZJE',OleDbType.VarChar,50)).Value = strp_YKZJE;

oleComm.Parameters.Add(new OleDbParameter('p_CSDWDM',OleDbType.VarChar,50)).Value = strp_CSDWDM;

oleComm.Parameters.Add(new OleDbParameter('p_YKSH',OleDbType.VarChar,50)).Value = strp_YKSH;

//out参数

oleComm.Parameters.Add(new OleDbParameter('p_zt',OleDbType.VarChar,50));

oleComm.Parameters['p_zt'].Direction = ParameterDirection.Output;

oleComm.Parameters.Add(new OleDbParameter('p_errordesc',OleDbType.VarChar,50));

oleComm.Parameters['p_errordesc'].Direction = ParameterDirection.Output;

oleComm.ExecuteNonQuery();//执行存储过程

//赋值

strp_zt = oleComm.Parameters['p_zt'].Value.ToString();

strp_errordesc = oleComm.Parameters['p_errordesc'].Value.ToString();

string str1 = oleComm.Parameters['p_zt'].Value.ToString();

string str2 = oleComm.Parameters['p_errordesc'].Value.ToString();

DataSet ds = new DataSet();

DataTable table1 = new DataTable();

ds.Tables.Add(table1);

ds.Tables[0].Columns.Add('p_zt');

ds.Tables[0].Columns.Add('p_errordesc');

DataRow dr = ds.Tables[0].NewRow();

dr[0] = str1;

dr[1] = str2;

ds.Tables[0].Rows.Add(dr);

return ds;

}

catch(Exception)

{

strp_zt = '';

strp_errordesc = '';

return null;

}

finally

{

oleConn.Close();

oleConn.Dispose();

}

}

#endregion

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有