这个是哪里的问题 帮忙解决一下

解决方案 »

  1.   

    你的时间时初始化的时间 0001-01-01 不要用DateTime.Min数据库的范围和.net 的时间 两个的范围不一致
      

  2.   

    当天时间在数据库里用getdate,在C#里用datetime.now
      

  3.   

    有些时候时间溢出是因为获取的时间经过了转换等处理,你调试一下得到的时间日期值(或者给变量的赋值)是不是介于1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM之间!
      

  4.   

     string NewsTitle = txtNewsTitle.Text.Trim();
                string NewsContent = Request.Form["content"];            info.NewsTitle = NewsTitle;
                info.NewsContent = NewsContent;
                if (txtBeginDate.Text.Trim() != "")
                {
                    info.BeginDate = Convert.ToDateTime(txtBeginDate.Text.Trim());
                }
                if (txtEndDate.Text.Trim() != "")
                {
                    info.EndDate = Convert.ToDateTime(txtEndDate.Text.Trim());
                }

                long ActivityID = -1;
                try
                {
                    ActivityID = Convert.ToInt64(Request.Form[hidActivityID.UniqueID]);
                }
                catch { }
      

  5.   

    Database db = DatabaseFactory.CreateDatabase();
        DbCommand cmd = db.GetSqlStringCommand(SQL_INSERT);
                db.AddInParameter(cmd, "@NewsID", DbType.Int64, info.NewsID);
                db.AddInParameter(cmd, "@CategoryID", DbType.Int32, info.CategoryID);
                db.AddInParameter(cmd, "@ActivityID", DbType.Int64, info.ActivityID);
                db.AddInParameter(cmd, "@ActivityName", DbType.String, info.ActivityName);
                db.AddInParameter(cmd, "@NewsTitle", DbType.String, info.NewsTitle);
                db.AddInParameter(cmd, "@NewsContent", DbType.String, info.NewsContent);
                db.AddInParameter(cmd, "@BeginDate", DbType.DateTime, info.BeginDate);
                db.AddInParameter(cmd, "@EndDate", DbType.DateTime, info.EndDate);
                db.AddInParameter(cmd, "@CreateDate", DbType.DateTime, info.CreateDate);
                db.AddInParameter(cmd, "@ActivityBeginDate", DbType.DateTimeinfo.ActivityBeginDate);
                db.AddInParameter(cmd, "@ActivityEndDate", DbType.DateTime, info.ActivityEndDate);
     
                db.AddInParameter(cmd, "@CompanyAbbreviationName", DbType.String, info.CompanyAbbreviationName);
    db.ExecuteScalar(cmd);最后报错
      

  6.   

    txtBeginDate.Text和txtEndDate.Text的值是什么?
      

  7.   

    你可能是忘记给某个时间字段赋值了,你检查一下,比如一个模型层对象里有AddTime和ModifyTime,而你只给一个字段赋了值,却忘记另一个字段了,就会出现这个错误,其实并不是C#中的DateTime的最小日期超出了Sql的日期范围,而是某个日期字段本来该赋值的,但你却没有给它赋值,系统就自动用C#的DateTime的最小日期给它赋了值,结果就造成这个错误了,它这个错误是提示你有一个字段没有赋值,而不是表面上说的那个意思,你好好检查一下
      

  8.   

    你换成
     info.BeginDate = Convert.ToDateTime(txtBeginDate.Text.Trim()+ " 00:00:00");
    info.EndDate = Convert.ToDateTime(txtEndDate.Text.Trim()+ " 00:00:00");试试。
      

  9.   

    你给值是正确的,但应该存在细节问题,你断点跟综一下,txtBeginDate.Text.Trim()得的值是什么?
    有可能不是你想像的那个值,断点跟综一下
      

  10.   

    你insert那么多字段,所有字段都有赋值吗?特别是有日期的字段。
    数据库中你insert是否可以为空,不能为空的话,就必须给其赋值