排球比赛计分程序
计划
估计此程序需要2周
- 开发
- 需求分析
用户故事:作为一个排球计分人员,我希望知道每场比赛队伍得分和积分情况,以便于计分给每队进行排名。
- 设计复审:
将编写的程序进行生成进行设计复审修改代码。
- 代码规范:
利用VS2010对该程序进行代码规范。
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 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 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; } } } namespace Model { public class SingleBall { public int BallNum { get; set; } public string GetTeam { get; set; } public int WinTeamScore { get; set; } public int LoseTeamScore { get; set; } public int GetMemberNum { get; set; } public string HowGet { get; set; } public int LoseMemberNum { get; set; } } } public class GameNotes { public int ID { get; set; } public string NameA { get; set; } public string NameB { get; set; } public DateTime Data { get; set; } public string R1 { get; set; } public string R2 { get; set; } public string R3 { get; set; } public string R4 { get; set; } public string R5 { get; set; } public string Place { get; set; } } public class GameNotes { public int ID { get; set; } public string NameA { get; set; } public string NameB { get; set; } public DateTime Data { get; set; } public string R1 { get; set; } public string R2 { get; set; } public string R3 { get; set; } public string R4 { get; set; } public string R5 { get; set; } public string Place { get; set; } } namespace DAL { public class SingleBallDAL { public int InsertBallInfo(SingleBall sb) { string sql = "insert into SingleBall values"+ "(@BallNum,@GetTeam,@WinTeamScore,@LoseTeamScore,@GetMemberNum,@HowGet,@LoseMemberNum)"; SqlParameter[] pms = { new SqlParameter("@BallNum",sb.BallNum), new SqlParameter("@GetTeam",sb.GetTeam), new SqlParameter("@WinTeamScore",sb.WinTeamScore), new SqlParameter("@LoseTeamScore",sb.LoseTeamScore), new SqlParameter("@GetMemberNum",sb.GetMemberNum), new SqlParameter("@HowGet",sb.HowGet), new SqlParameter("@LoseMemberNum",sb.LoseMemberNum), }; return SqlHelper.ExecuteNonQuery(sql, pms); } } } namespace VolleyballDal { public class volleyDal { public DataTable SelectScore(string team) { string sql = "select * from VolleybalScore where Teams like '%"+team+"%'"; DataTable dt = SqlHelper.ExecuteDataTable(sql); return dt; } public bool SelectScoreCount(string team) { string sql = "select count(*) from VolleybalScore where Teams like '%" + team + "%'"; int count = (int)SqlHelper.ExecuteScalar(sql); return count>0; } } } namespace VolleyballBll { public class volleyBll { private volleyDal dal = new volleyDal(); public DataTable SelectScore(string team) { return dal.SelectScore(team); } public bool SelectScoreCount(string team) { return dal.SelectScoreCount(team); } } } namespace VolleyballDal { public class volleyDal { public DataTable SelectScore(string team) { string sql = "select * from VolleybalScore where Teams like '%"+team+"%'"; DataTable dt = SqlHelper.ExecuteDataTable(sql); return dt; } public bool SelectScoreCount(string team) { string sql = "select count(*) from VolleybalScore where Teams like '%" + team + "%'"; int count = (int)SqlHelper.ExecuteScalar(sql); return count>0; } } }
- 代码复审:2h
- 事后总结: 还不够完善,有待提高与改进。