1、 / WebService 的摘要说明/summary WebService(Namespace = http:/tempuri.org/) WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1) System.ComponentModel.ToolboxItem(false) / 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 System.Web.Script.Services.ScriptService public class WebService : System.Web.Se
2、rvices.WebService / 数据库连接字符串 public string connstr = SqlHelper.ConnectionStringLocalTransaction; WebMethod public string HelloWorld() return Hello World; public UsersModel GetPwdByName(string name) UsersModel model = null; string strsql = select * from users where name=+name+ SqlDataReader dr=SqlHel
3、per.ExecuteReader(connstr, CommandType.Text, strsql, null); if (dr.Read() model = new UsersModel(); model.Id = dr.GetInt32(0); model.Name = dr.GetString(1); model.Pwd = dr.GetString(2); return model; public List GetRepairsList() List list = new List / 使用示例: / int result = ExecuteNonQuery(connString,
4、 CommandType.StoredProcedure, PublishOrders, new SqlParameter(prodid, 24);/remarksparam name=connectionString一个有效的数据库连接字符串commandTypeSqlCommand命令类型 (存储过程, T-SQL语句, 等等。)commandText存储过程的名字或者 T-SQL 语句commandParameters以数组形式提供SqlCommand命令中用到的参数列表返回一个数值表示此SqlCommand命令执行后影响的行数 public static int ExecuteNonQ
5、uery(string connectionString, CommandType cmdType, string cmdText, params SqlParameter commandParameters) SqlCommand cmd = new SqlCommand(); using (SqlConnection conn = new SqlConnection(connectionString) /通过PrePareCommand方法将参数逐个加入到SqlCommand的参数集合中 PrepareCommand(cmd, conn, null, cmdType, cmdText, c
6、ommandParameters); int val = cmd.ExecuteNonQuery(); /清空SqlCommand中的参数列表 cmd.Parameters.Clear(); return val; /执行一条不返回结果的SqlCommand,通过一个已经存在的数据库连接 / 使用参数数组提供参数 int result = ExecuteNonQuery(conn, CommandType.StoredProcedure, conn一个现有的数据库连接 public static int ExecuteNonQuery(SqlConnection connection, Com
7、mandType cmdType, string cmdText, params SqlParameter commandParameters) PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters); / 执行一条不返回结果的SqlCommand,通过一个已经存在的数据库事物处理 int result = ExecuteNonQuery(trans, CommandType.StoredProcedure, trans一个存在的 sql 事物处理 public static int ExecuteN
8、onQuery(SqlTransaction trans, CommandType cmdType, string cmdText, params SqlParameter commandParameters) PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, commandParameters); / 执行一条返回结果集的SqlCommand命令,通过专用的连接字符串。 SqlDataReader r = ExecuteReader(connString, CommandType.StoredProcedure, 返
9、回一个包含结果的SqlDataReader public static SqlDataReader ExecuteReader(string connectionString, CommandType cmdType, string cmdText, params SqlParameter commandParameters) SqlConnection conn = new SqlConnection(connectionString); / 在这里使用try/catch处理是因为如果方法出现异常,则SqlDataReader就不存在, /CommandBehavior.CloseConne
10、ction的语句就不会执行,触发的异常由catch捕获。 /关闭数据库连接,并通过throw再次引发捕捉到的异常。 try SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); return rdr; catch conn.Close(); throw; / 执行一条返回第一条记录第一列的SqlCommand命令,通过专用的连接字符串。 Object obj = ExecuteScalar(connString, CommandType.StoredProcedure, 返回一个object类型的数据,可以通过 Convert.ToType方法转换类型 public static object ExecuteScalar(string connectionString, CommandType cmdType, string cmdText, params SqlParameter commandParameters) SqlCommand cmd = new SqlC
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1