Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 学生可以每6个月申请一张票_C#_Sql Server - Fatal编程技术网

C# 学生可以每6个月申请一张票

C# 学生可以每6个月申请一张票,c#,sql-server,C#,Sql Server,我有一个小项目,说学生可以每6个月申请一张票,这是我写的代码,我会把我面临的问题联系起来 using (var Con = new SqlConnection(@"Data Source = root\SQLEXPRESS; Initial Catalog =Log-In; Integrated Security = True")) { Con.Open(); var table = "INSERT INTO Student(us

我有一个小项目,说学生可以每6个月申请一张票,这是我写的代码,我会把我面临的问题联系起来

using (var Con = new SqlConnection(@"Data Source = root\SQLEXPRESS; Initial Catalog =Log-In; Integrated Security = True"))
        {
            Con.Open();
            var table = "INSERT INTO  Student(username,DepartureCiry,ArrivalCity,DateOfDeparture,DateOfReturn)VALUES(@username,@DepartureCiry,@ArrivalCity,@DateOfDeparture,@DateOfReturn)";

            using (var cmd = new SqlCommand(table, Con))
                {
                var newDep = "Select DateOfDeparture from Student where username=@username";
                var departValue = new SqlCommand(newDep, Con);
                departValue.Parameters.AddWithValue("@username", username);
                var dataFromDatabase = Convert.ToDateTime(departValue.ExecuteScalar());
                var newStudent = Convert.ToDateTime(date_time_picker.Text);
                var diff = (newStudent - dataFromDatabase);
                MessageBox.Show(diff.ToString());
                if (diff.TotalDays < 180)
                {
                    MessageBox.Show("you exceed you're booking for the last 6 monthes");
                }
                else
                {
                    MessageBox.Show("request has been sent suckssfully");
                }

                cmd.Parameters.AddWithValue("@username", username);
                cmd.Parameters.AddWithValue("@DepartureCiry", fromtxt.Text);
                cmd.Parameters.AddWithValue("@ArrivalCity", Totxt.Text);
                cmd.Parameters.AddWithValue("@DateOfDeparture", date_time_picker.Text);
                cmd.Parameters.AddWithValue("@DateOfReturn", date_time_picker1.Text);
                cmd.ExecuteNonQuery();
                MessageBox.Show("Data inserted suckssfully");
            }
使用(var Con=new SqlConnection(@“Data Source=root\SQLEXPRESS;Initial Catalog=Log-In;Integrated Security=True”))
{
Con.Open();
var table=“插入学生(用户名、部门名称、到达日期、离开日期、返回日期)值(@username、@DepartureCiry、@ArrivalCity、@DateOfDeparture、@DateOfReturn)”;
使用(var cmd=new SqlCommand(table,Con))
{
var newDep=“选择从学生处分离的日期,其中用户名=@username”;
var departValue=newsqlcommand(newDep,Con);
departValue.Parameters.AddWithValue(“@username”,username);
var dataFromDatabase=Convert.ToDateTime(departValue.ExecuteScalar());
var newStudent=Convert.ToDateTime(日期\时间\选择器.Text);
var diff=(newStudent-dataFromDatabase);
Show(diff.ToString());
如果(差异总天数<180)
{
MessageBox.Show(“您超过了过去6个月的预订量”);
}
其他的
{
MessageBox.Show(“请求已完全发送”);
}
cmd.Parameters.AddWithValue(“@username”,username);
cmd.Parameters.AddWithValue(“@DepartureCiry”,fromtxt.Text);
cmd.Parameters.AddWithValue(“@ArrivalCity”,toText.Text);
cmd.Parameters.AddWithValue(“@DateOfDeparture”,date\u time\u picker.Text);
cmd.Parameters.AddWithValue(“@DateOfReturn”,date\u time\u picker1.Text);
cmd.ExecuteNonQuery();
MessageBox.Show(“数据插入失败”);
}
错误:

其他信息:无法将“System.TimeSpan”类型的对象强制转换为“System.IConvertible”类型


虽然你真的应该告诉我们,但我猜这一行出现了异常:

int diffrance = Convert.ToInt32(diff);
您应该完全删除该行,并将
if
语句替换为:

if (diff.TotalDays > 180)

旁注:那么你的问题是什么?为什么你尝试过的东西不起作用?@Larnu不,它不起作用请查看代码下面的错误
“糟透了”
是的,我同意这段代码中发生了几次转换,您是否设置了断点并使用调试器进行了调试?您能告诉我们是哪一行导致了错误吗?