日期字段小于" 1/1/1753 12:00 AM"即它" 1/1/0001 12:00:00 AM"

时间:2017-10-02 07:54:47

标签: c# sql-server asp.net-mvc

我正在使用ASP.NET MVC,我正在尝试使用存储过程在SQL Server表中保存我的视图中的值。由于Date属性存在问题,该过程无法正常工作的问题。我没有得到任何错误或异常但是当我调试时,调试器在打开SQL Server连接后直接捕获并且我可以捕获此异常:

  

SqlDateTime溢出。必须在1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之间。

这是我在控制器中写的:

[HttpPost]
public ActionResult Save_Bestellung(Bestellung bs)
{
        var errors = ModelState.Values.SelectMany(v => v.Errors);

        try
        {
            if (ModelState.IsValid)
            {
                BestellungManagement bdb = new BestellungManagement();

                if (bdb.AddBestellung(bs))
                {
                    return View("~/Views/Bestellung/Index.cshtml");
                    ViewBag.Message = "Bestellung saved Successfully";
                    ModelState.Clear();
                }
            }

            return RedirectToAction("Index");
        }
        catch
        {
            return JavaScript("alert('Order is Wrong ! Please verify your data !!')");
        }
}

这是我的班级BestellungManagement

public bool AddBestellung(Bestellung bs)
{
        try
        {
            using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DeliveryCon"].ToString()))
            {
                using (SqlCommand cmd = new SqlCommand("AddNewBestellung", con))
                {
                    cmd.Parameters.AddWithValue("@Date", bs.Date);

                    con.Open();
                    int i = cmd.ExecuteNonQuery();
                    con.Close();

                    if (i >= 1)
                       return true;
                    else
                       return false;
                }
            }
        }
        catch(Exception ex)
        {
            string e = ex.Message;
            return false;
        }
}

在模型Bestellung.cs中,我有:

public DateTime Date { get; set; }

数据库架构:

  [Date]         DATETIME      NOT NULL,

在视图中:

<label>DATE : </label>
 <input id="datepicker" name="Text" type="text" value="mm/dd/yyyy" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'mm/dd/yyyy';}" required="">

datepicker功能:

<script>
    $(function() 
     {
      $("#datepicker").datepicker({ minDate: 0 });
      });
 </script>

0 个答案:

没有答案