这是 s for 循环,它将转到时间并将时间列设置为 true。这是第一次工作,但是当时间增加 0.5 时,它仍然是错误的。当我尝试 MessageBox.Show("" + Time1 + ""); 时,for 循环正在工作 在 for 循环内。
for (double Time = time_began_5; Time < time_finished_5; Time = Time + 0.5)
        {
            string Time1 = Time.ToString("0.00");
            try
            {
                SqlConnection cn = new SqlConnection("Data Source=.\\SqlExpress;Initial Catalog=AllensCroft;Integrated Security=True;MultipleActiveResultSets=True;Application Name=EntityFramework;");
                cn.Open();
                SqlCommand Command = new SqlCommand("INSERT INTO Slots ([Date],[RoomID],[" + Time1 + "]) Values (@date,@room,1)", cn);
                Command.Parameters.AddWithValue("date", date);
                Command.Parameters.AddWithValue("room", rooms_combo.SelectedValue);
                Command.ExecuteNonQuery();
                try
                {
                    cn.Close();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.ToString());
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }
        }
这是数据库的样子,第一个真正的字段有效,但是当它循环到另一个时间时,它仍然是错误的,我认为这可能是因为如果我有一个具有该日期的现有行(日期是主键),我无法更新该行,所以我可能需要一个如果该行存在,更新,否则创建一个新行。
