Datetime2数据类型转换为datetime数据类型导致值超出范围

本文关键字:范围 数据类型 数据 类型转换 datetime Datetime2 | 更新日期: 2023-09-27 17:52:45

我想将datetime数据存储到SQL Server数据库中。我刚刚创建了两个用于插入日期和时间的输入字段,然后将其作为字符串添加,然后将该字符串转换为c#日期时间格式。我的代码

myView文件

 <div class="editor-field">
    <!-- for insert date -->
    <input type="text" name="tantativeDate" id="tantativeDate" class="datefield">
    <!-- for insert time -->
    <input type="time" name="tantativeTime" id="tantativeTime" />
</div>
<div class="editor-field">
    <!-- for insert date -->
    <input type="text" name="dateArrival" id="dateArrival" class="datefield" />  
    <!-- for insert time -->
    <input type="time" name="timeArrival" id="timeArrival" /> 
</div>

my Controller method:

  public ActionResult DemoMethod()
 {
// get date and time and add this
string tan = (string)Request["tantativeDate"] + " " + (string)Request["tantativeTime"];
// get date and time and add this   
string arrive = (string)Request["dateArrival"] + " " + (string)Request["timeArrival"];
// convert datetime string into date time format
DateTime dt = DateTime.Parse(tan, System.Globalization.CultureInfo.CurrentCulture);
// convert datetime string into date time format
DateTime dy = DateTime.Parse(arrive, System.Globalization.CultureInfo.CurrentCulture);
// save data into database
DemoModel demo = new DemoModel()
{
    demo.tantativeTime = dt;
    demo.timeArrival = dy;
};
db.demo.Add(demo);
db.SaveChange();
}

,我得到了以下错误:

将datetime2数据类型转换为datetime数据类型导致值超出范围。

Datetime2数据类型转换为datetime数据类型导致值超出范围

你的代码似乎没有错误,可能你可能有另一个datetime字段可能是空的,尝试修复这个。如果仍然存在问题,则显示模型代码。

相关文章: