首页 > 其他 > 详细

最后冲刺作业

时间:2017-01-06 22:28:52      阅读:308      评论:0      收藏:0      [点我收藏+]

计划

        估计此程序需要5-7天。

  • 开发
  • 需求分析

   用户故事:作为一个赛事管理人员,我希望知道每场比赛队伍得分和积分情况,以便给每队进行排名。

     .设计复审:

                    将编写的程序进行生成,进行设计复审。看看是否生成错误,如果错误进行修改。

     .代码规范:

                   利用VS对该程序进行代码规范。

  生成文档:

技术分享

 

具体编码(部分代码):

 App.config:

<configuration> <connectionStrings> <add name="itcast" connectionString="server=.;initial catalog=itcast;integrated security=true;"/> </connectionStrings> </configuration>

SqlHelper类 class SqlHelper  

   {       

  private static readonly string constr = ConfigurationManager.ConnectionStrings["itcast"].ConnectionString;    

     public static int ExecuteNonQuery(string sql, params SqlParameter[] pams)    

     {

            using (SqlConnection conn = new SqlConnection(constr))      

       {               

  using (SqlCommand comm = new SqlCommand(sql, conn))            

     {            

         if (pams != null)       

              {           

              comm.Parameters.AddRange(pams);            

         }               

      conn.Open();    

                 return comm.ExecuteNonQuery();      

           }      

       }

        }

        public static DataTable ExecuteDataTable(string sql, params SqlParameter[] pams)  

       {             DataTable dt = new DataTable();

            using (SqlDataAdapter adapter = new SqlDataAdapter(sql, constr))       

      {              

   if (pams != null)           

      {                   

  adapter.SelectCommand.Parameters.AddRange(pams);               

  }              

   adapter.Fill(dt);         

    }        

     return dt;       

  }

        public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] pams)

        {

            SqlConnection conn = new SqlConnection(constr);      

       using (SqlCommand comm = new SqlCommand(sql, conn))     

        {            

     if (pams != null)            

     {                   

  comm.Parameters.AddRange(pams);

                }          

       try             

    {                   

  conn.Open();           

          return comm.ExecuteReader(System.Data.CommandBehavior.CloseConnection);            

     }           

      catch (Exception)        

         {                

     conn.Close();        

             conn.Dispose();            

         throw;             

    }     

        }    

     }

        public static object ExecuteScalar(string sql, params SqlParameter[] pams)      

   {

            using (SqlConnection conn = new SqlConnection(constr))        

     {            

     using (SqlCommand comm = new SqlCommand(sql, conn))        

         {                  

   if (pams != null)               

      {                   

      comm.Parameters.AddRange(pams);            

         }                   

  conn.Open();             

        return comm.ExecuteScalar();         

        }        

     }     

    }  

   }

 

public partial class Form1 : Form   

  {    

     public Form1()      

   {          

   InitializeComponent();    

     }

        private void button1_Click(object sender, EventArgs e)   

      {        

     string name = comboBox1.Text.Trim();      

       StringBuilder sql = new StringBuilder("select * from Info where 1=1");   

          if (!string.IsNullOrEmpty(name))         

    {               

  sql.Append(" and name like ‘%" + name + "%‘");       

      }

            dgv(sql.ToString());    

     }

        private void Form1_Load(object sender, EventArgs e)      

   {          

   comb();   

          dgv();     

    }        

private void dgv(string sql = "select * from Info")    

     {          

   dataGridView1.DataSource = SqlHelper.ExecuteDataTable(sql);  

       }   

      private void comb()      

   {      

       comboBox1.Items.Clear();         

    comboBox1.Items.Add("请选择队名");

comboBox1.SelectedIndex = 0;          

   string sql = "select name from Info";  

           using (SqlDataReader reader = SqlHelper.ExecuteReader(sql))  

           {         

        if (reader.HasRows)      

           {              

       while (reader.Read())               

      {                  

       comboBox1.Items.Add(reader[0]);     

                }        

         }         

    }      

   }

      代码复审:和同学对该程序进行讨论,对该程序进行指正。

       测试: 对该程序进行自己测试,然后进行修改和提交。

 

页面如下:

技术分享

 

报告

测试报告:经过测试,运行良好;

计算工作量:七天;

事后总结:经过这次用户故事的编写,发现了很多功能的实现难处,对数据的保存还有缺陷,下一步准备把数据库操作这一块好好改进。

最后冲刺作业

原文:http://www.cnblogs.com/zhang123456789/p/6257310.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!