如何将当前日期和时间插入到具有 DateTime 类型列的 SQL Server 表中?
Posted
技术标签:
【中文标题】如何将当前日期和时间插入到具有 DateTime 类型列的 SQL Server 表中?【英文标题】:How to insert current date and time to SQL Server table that has a column with DateTime type? 【发布时间】:2022-01-06 13:08:22 【问题描述】:我正在我的 ASP.NET Core 项目中工作,并尝试在新用户注册时添加当前注册日期和时间。为此,我使用了以下代码。这是注册ActionResult的一部分:
DateTime currentDate = DateTime.Now;
var user = new AppUser()
department = registerModel.department,
creationDate = registerModel.creationDate = currentDate,
isAdmin = registerModel.isAdmin,
isManager = registerModel.isManager,
isActive = registerModel.isActive,
canEdit = registerModel.canEdit,
canDelete = registerModel.canDelete,
canSendMessage = registerModel.canSendMessage,
canSeeNotification = registerModel.canSeeNotification
;
当我按下注册按钮时,显示以下错误:
处理请求时发生未处理的异常。 InvalidCastException:System.DateTime 类型的字段必须是 字符串、数组或 ICollection 类型。 System.ComponentModel.DataAnnotations.MaxLengthAttribute.IsValid(对象 值)
如何生成 SQL Server 接受的格式,同时将该对象保留为 DateTime 对象?
更新:
public class AppUser: IdentityUser < int >
[Display(Name = "Department")]
[Required(ErrorMessage = "Please enter depertment")]
[MaxLength(20)]
public string department
get;
set;
[Display(Name = "Creation date")]
[DataType(DataType.DateTime)]
[MaxLength(100)]
public DateTime creationDate
get;
set;
[Required]
//[Range(0, 1)]
public bool isAdmin
get;
set;
[Required]
//[Range(0, 1)]
public bool isManager
get;
set;
[Required]
//[Range(0, 1)]
public bool isActive
get;
set;
[Required]
//[Range(0, 1)]
public bool canEdit
get;
set;
[Required]
//[Range(0, 1)]
public bool canDelete
get;
set;
[Required]
//[Range(0, 1)]
public bool canSendMessage
get;
set;
[Required]
//[Range(0, 1)]
public bool canSeeNotification
get;
set;
【问题讨论】:
您使用代码优先还是数据库优先方法? @DannyBoy 我正在使用 CodeFirst。 您使用的是哪个 .NET Core 版本?能否请您提供该物业的型号代码?试试下面的 Serges 回答。 :D 你能发布AppUser类吗? 我更新了主要问题 【参考方案1】:试试这个
creationDate = currentDate,
isAdmin = registerModel.isAdmin,
...
【讨论】:
以上是关于如何将当前日期和时间插入到具有 DateTime 类型列的 SQL Server 表中?的主要内容,如果未能解决你的问题,请参考以下文章
MySQL 在插入时在 DATETIME 字段中设置当前日期
如何从 MySql 数据库中获取日期到 C# DateTime 对象?