zoukankan      html  css  js  c++  java
  • 三层架构重构用户故事(现场记分员)

    开发流程如下:

    项目计划

       完成这个项目需要的时间:5-7天

    项目开发

      需求分析:

        作为一名现场记分员,我希望详细记录现场比分增长情况,以便观众及运动员、教练员及时掌握比赛状况。

      设计文档

        由排球比赛用户故事的需求分析可知,此程序是用来记录现场比分情况。

      计划复审

     目前在进行中

      代码规范

        根据Visual Studio 2010规范去写。

      具体设计

    部分编码:

    using System.Text;
    using System.Configuration;
    using System.Data;
    using System.Data.SqlClient;

    namespace DAL
    {
    public static class SqlHelper
    {

    //连接字符串

    private static readonly string constr = ConfigurationManager.ConnectionStrings["connectionStr"].ConnectionString;
    public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] pms)
    {
    SqlConnection con = new SqlConnection(constr);
    using (SqlCommand cmd = new SqlCommand(sql, con))
    {
    if (pms != null)
    {
    cmd.Parameters.AddRange(pms);
    }
    try
    {
    con.Open();
    return cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
    }
    catch (Exception)
    {
    con.Close();
    con.Dispose();
    throw;
    }
    }
    }

    public static int ExecuteNonQuery(string sql, params SqlParameter[] pms)
    {
    using (SqlConnection con = new SqlConnection(constr))
    {
    using (SqlCommand cmd = new SqlCommand(sql, con))
    {
    if (pms != null)
    {
    cmd.Parameters.AddRange(pms);
    }

    con.Open();
    return cmd.ExecuteNonQuery();
    }

    }
    }
    public static object ExecuteScalar(string sql, params SqlParameter[] pms)
    {
    using (SqlConnection con = new SqlConnection(constr))
    {
    using (SqlCommand cmd = new SqlCommand(sql, con))
    {
    if (pms != null)
    {
    cmd.Parameters.AddRange(pms);
    }

    con.Open();
    return cmd.ExecuteScalar();
    }
    }
    }
    public static DataTable ExecuteDataTable(string sql, params SqlParameter[] pms)
    {
    DataTable dt = new DataTable();
    using (SqlDataAdapter adapter = new SqlDataAdapter(sql, constr))
    {

    if (pms != null)
    {
    adapter.SelectCommand.Parameters.AddRange(pms);
    }
    adapter.Fill(dt);
    }
    return dt;
    }
    }
    }

    事后总结并提出改进计划:对于三层机构还不太会,还需多多练习。

  • 相关阅读:
    NET6 如何使用Windows Service
    Delphi 设置窗体无标题栏和边框
    java MD5 加密 及对应的 oracle数据库中的MD5加密实现
    oracle 查看锁表进程和解锁
    创建dblink 及 同义词
    demjson python key没有引号的字符串如何转json
    Typescript Objects对象
    typescrip 数组、Map、对象方法
    mysql 日期 时间函数
    Typesrcipt日期时间
  • 原文地址:https://www.cnblogs.com/scfs/p/6567675.html
Copyright © 2011-2022 走看看