通过三层实现年龄增长
2015-08-11 20:25
309 查看
1. 代码结果如下图所示:
2. TblPersonBll.cs中的代码:
3. TblPersonDal.cs中的代码:
4. frmIncAge.cs中的代码:
5. SqlHelper.cs中的代码:
2. TblPersonBll.cs中的代码:
public class TblPersonBll { public bool IncAgeByAutoId(int autoId) { TblPersonDal dal=newTblPersonDal(); return dal.IncAgeByAutoId(autoId) >0; } }
3. TblPersonDal.cs中的代码:
public class TblPersonDal { public int IncAgeByAutoId(int autoId) { string sql="update TblPerson set age=age+1 where autoId=@id"; return SqlHelper.ExcuteNonQuery(sql, CommandType.Text,new SqlParameter("@id", autoId)); } }
4. frmIncAge.cs中的代码:
private void button1_Click(objectsender, EventArgse) { TblPersonBll bll=new TblPersonBll(); int autoId=int.Parse(textBox1.Text.Trim()); if (bll.IncAgeByAutoId(autoId)) { MessageBox.Show("ok!"); } else { MessageBox.Show("not ok!"); } }
5. SqlHelper.cs中的代码:
public static class SqlHelper { //获取连接字符串 private static string conStr=ConfigurationManager.ConnectionStrings["mysqlserver"].ConnectionString; /// <summary> ///执行insert/delete/update方法 /// </summary> /// <param name="sql"></param> /// <param name="cmdType"></param> /// <param name="pms"></param> /// <returns></returns> public static int ExcuteNonQuery(string sql, CommandType cmdType, params SqlParameter[] pms) { using (SqlConnection con=new SqlConnection(conStr)) { using (SqlCommand cmd=new SqlCommand(sql, con)) { cmd.CommandType=cmdType; if (pms!=null) { cmd.Parameters.AddRange(pms); } con.Open(); return cmd.ExecuteNonQuery(); } } } /// <summary> ///执行返回单个值方法 /// </summary> /// <param name="sql"></param> /// <param name="cmdType"></param> /// <param name="pms"></param> /// <returns></returns> public static object ExecuteScalar(string sql, CommandType cmdType, params SqlParameter[] pms) { using (SqlConnection con=new SqlConnection(conStr)) { using (SqlCommand cmd=new SqlCommand(sql, con)) { cmd.CommandType=cmdType; if (pms!=null) { cmd.Parameters.AddRange(pms); } con.Open(); returncmd.ExecuteScalar(); } } } /// <summary> ///执行返回SqlDaraReader方法 /// </summary> /// <param name="sql"></param> /// <param name="cmdType"></param> /// <param name="pms"></param> /// <returns></returns> public static SqlDataReader ExecuteDataReader(string sql, CommandType cmdType, params SqlParameter[] pms) { SqlConnection con=new SqlConnection(conStr); using (SqlCommand cmd=new SqlCommand(sql, con)) { cmd.CommandType=cmdType; if (pms!=null) { cmd.Parameters.AddRange(pms); } try { con.Open(); return cmd.ExecuteReader(CommandBehavior.CloseConnection); } catch { con.Close(); con.Dispose(); throw; } } }
/// <summary> ///执行返回Datatable方法 /// </summary> /// <param name="sql"></param> /// <param name="cmdType"></param> /// <param name="pms"></param> /// <returns></returns> public static DataTable ExecuteDataTable(string sql, CommandType cmdType, params SqlParameter[] pms) {
DataTable dt=new DataTable(); using (SqlDataAdapter adapter=new SqlDataAdapter(sql, conStr)) { adapter.SelectCommand.CommandType=cmdType; if (pms!=null) { adapter.SelectCommand.Parameters.AddRange(pms); } adapter.Fill(dt); return dt; } } }
相关文章推荐
- The Accomodation of Students
- C#:控制WinForm界面的显示
- 可变参数宏__VA_ARGS__
- MKNetworkit,Express实现简单登录验证(1)
- I have a dream
- this 指针
- 解决Xcode上传出现的Error ITMS-9000问题 ,No image found at the path referenced under key CFBundleIcons AppIcon
- 《开源公开课分享》:Java开源框架案例分享
- 阿里云服务器linux(centos)常用命令
- FastJSON的用法
- leetcode——Lowest Common Ancestor of a Binary Search Tree
- 基于ARP的监听
- 29-HTML-19-HTML(标签的分类)
- Java多态性理解
- Android单元测试异常总结---Test run failed:Unable to find instrumentation target package
- 10-2. 删除字符串中的子串(20)
- uva11752(合数)
- 8月11日----数据库、serverlet
- Linux管道命令(pipe)之选取命令grep
- 29-HTML-17-HTML(服务端和客户端校验的问题)