键入以在C#中存储时间和在T-SQL中存储相应的类型

Cic*_*ami 10 c# t-sql time

我想知道如何在C#和T-SQL中存储时间.我知道它们都提供了DateTime类型,但我只需要存储时间.例如:

var startTime = 9PM;
var endTime = 10PM;
Run Code Online (Sandbox Code Playgroud)

然后从数据库中存储/检索此值.提前致谢.

弗朗切斯科

Hei*_*nzi 10

C#

无论是使用DateTime还是TimeSpan输入C#进行存储9 PM 都取决于品味.就个人而言,我会使用DateTime,将日期组件留空,因为这在语义上更接近你想要的.(A TimeSpan设计用于保持时间间隔,例如"21小时".)

该文档支持这两个选项.这来自TimeSpan的文档:

TimeSpan结构也可用于表示一天中的时间,但仅限于时间与特定日期无关.

另一方面,MSDN文章选择DateTime,DateTimeOffset和TimeZoneInfo提到以下内容:

DateTime结构适用于执行以下操作的应用程序:
*仅处理日期.
*仅与时俱进.
[...]


T-SQL

SQL Server具有time数据类型.