计分员计分程序
1.估計(jì)這個(gè)任務(wù)需要多長(zhǎng)時(shí)間:兩星期
2.需求分析:
? 作為一名現(xiàn)場(chǎng)記分員,我希望詳細(xì)記錄比賽現(xiàn)場(chǎng)比分增長(zhǎng)情況,以便觀眾及運(yùn)動(dòng)員、教練員及時(shí)掌握比賽狀況。(滿意條件:每一次比分的改變,都要形成一條記錄)。
3.設(shè)計(jì)文檔:
根據(jù)用戶需求可知我們此次程序需要做到每次分?jǐn)?shù)變化的時(shí)候都要記錄。當(dāng)記分員操作之后就要形成記錄。
4.代碼規(guī)范
?根據(jù)Visual Studio 2010規(guī)范去寫。
5.具體設(shè)計(jì):
?
6.具體編碼
?public class Dal
??? {
??????? public List<Model> GetAll()
??????? {
??????????? string sql = "select * from Table_1";
??????????? List<Model> stu = new List<Model>();
??????????? using (SqlDataReader reader = SqlHelper.ExecuteReader(sql))
??????????? {
??????????????? if (reader.HasRows)
??????????????? {
??????????????????? while (reader.Read())
??????????????????? {
??????????????????????? Model Mod = new Model();
??????????????????????? Mod.ID = (int)reader["ID"];
??????????????????????? Mod.Name = reader["Name"].ToString();
??????????????????????? Mod.Wz = reader["Wz"].ToString();
???????????????????????
??????????????????????? stu.Add(Mod);
??????????????????? }
??????????????? }
??????????? }
??????????? return stu;
??????? }
??????? public List<Model> GetAll1()
??????? {
??????????? string sql = "select * from Table_2";
??????????? List<Model> stu = new List<Model>();
??????????? using (SqlDataReader reader = SqlHelper.ExecuteReader(sql))
??????????? {
??????????????? if (reader.HasRows)
??????????????? {
??????????????????? while (reader.Read())
??????????????????? {
??????????????????????? Model Mod = new Model();
??????????????????????? Mod.ID = (int)reader["ID"];
??????????????????????? Mod.Name = reader["Name"].ToString();
??????????????????????? Mod.Wz = reader["Wz"].ToString();
??????????????????????? stu.Add(Mod);
??????????????????? }
??????????????? }
??????????? }
??????????? return stu;
??????? }
?
??? }
?public class Bll
??? {
??????? public Dal dal = new Dal();
??????? public List<Model> GetAll()
??????? {
??????????? return dal.GetAll().Count > 0 ? dal.GetAll() : null;
??????? }
??????? public List<Model> GetAll1()
??????? {
??????????? return dal.GetAll1().Count > 0 ? dal.GetAll1() : null;
??????? }
??? }
public class Model
??? {
??????? public int ID { get; set; }
??????? public string Name { get; set; }
??????? public string Wz { get; set; }
???????
??? }
public static class SqlHelper
??? {
??????? //獲取連接字符串
??????? private static readonly string constr = ConfigurationManager.ConnectionStrings["connectionStr"].ConnectionString;
??????? //ExecuteNonQuery()方法 執(zhí)行增刪改
??????? 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();
??????????????? }
??????????? }
??????? }
??????? //ExecuteScalar()方法 執(zhí)行返回單個(gè)值
??????? 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();
??????????????? }
??????????? }
??????? }
??????? //ExecuteReader()方法? 執(zhí)行返回SqlDataReader
??????? 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;
??????????????? }
??????????? }
??????? }
??????? //ExecuteDataTable()方法? 執(zhí)行返回
??????? 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;
??????? }
??? }
7.運(yùn)行界面
?
?
程序中還存在一些問(wèn)題,還在繼續(xù)完善當(dāng)中。
轉(zhuǎn)載于:https://www.cnblogs.com/l424011148/p/6568453.html
總結(jié)