C# 将字符串转换为datetime2
Iam使用一个通过通信协议获取数据的应用程序,在我获取的数据中有日期,我设法以这种形式将其形成一个字符串日期:C# 将字符串转换为datetime2,c#,sql-server,datetime2,C#,Sql Server,Datetime2,Iam使用一个通过通信协议获取数据的应用程序,在我获取的数据中有日期,我设法以这种形式将其形成一个字符串日期: "dd/MM/yyyy HH:mm:ss.mmm" 我想将其插入数据库: updateEvent_list = "INSERT INTO Events_List (date, Object,Event,IOA,ASDU) VALUES(@date, @event_object, @Event, @IOA, @ASDU)"; date列属于datetime2类型 问题是:如何将获取的
"dd/MM/yyyy HH:mm:ss.mmm"
我想将其插入数据库:
updateEvent_list = "INSERT INTO Events_List (date, Object,Event,IOA,ASDU) VALUES(@date, @event_object, @Event, @IOA, @ASDU)";
date列
属于datetime2
类型
问题是:如何将获取的字符串转换为datetime2
编辑:
事实上,我要插入两种类型的日期:
1) 带有时间标签的帧:我将日期转换为字符串的帧。
2) 没有时间标签的帧:Iam使用DateTime date=DateTime.UtcNow
当它们独立实现时,每一个都能完美地工作
是否有任何解决方案允许在同一程序中同时使用这两种方法 您可以使用
CAST
:
"INSERT INTO Events_List (date, Object,Event,IOA,ASDU) VALUES(CAST(@date as DATETIME2), @event_object, @Event, @IOA, @ASDU)";
通过使用参数化查询,这不应该自动发生吗?“设法从中形成一个字符串日期”,进一步将其转换为c#DateTime,并以方便的方式将该日期传递给sql cmd