Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 获取日期时间值并仅接受时间,反之亦然_C#_Datetime - Fatal编程技术网

C# 获取日期时间值并仅接受时间,反之亦然

C# 获取日期时间值并仅接受时间,反之亦然,c#,datetime,C#,Datetime,我目前正在开发一个应用程序,用作待办事项列表,我想知道如何接受日期时间框中的值,但只使用日期值或时间值。我现在就是这样做的 DateTime ted = appointmentDateTimeDate.Value; //The date DateTime at = appointmentDateTimeTime.Value; //The time 我是否应该以另一种方式执行此操作?对日期和时间使用属性: DateTime ted = appointmentDateTimeDate.Date;

我目前正在开发一个应用程序,用作待办事项列表,我想知道如何接受日期时间框中的值,但只使用日期值或时间值。我现在就是这样做的

DateTime ted = appointmentDateTimeDate.Value; //The date
DateTime at = appointmentDateTimeTime.Value;  //The time
我是否应该以另一种方式执行此操作?

对日期和时间使用属性:

DateTime ted = appointmentDateTimeDate.Date; //The date
TimeSpan at = appointmentDateTimeTime.TimeOfDay;  //The time

DateTime值始终包含日期和时间,无论是否同时使用

您可以使用。属性来获取“刚好是日期”。它仍将具有时间值,但时间值将为午夜。您也可以使用。属性获取时间部分,该时间部分将是指示自午夜以来的滴答声数的

我在这里做了一个飞跃,假设您试图在UI中用一个控件设置日期,用另一个控件设置时间。下面是一些代码的示例,我们使用连接到文本框的Ajax CalendarExtender和


BCL并没有很好地区分日期和时间

如果您愿意接受一个新的外部依赖项,我想插入我的库,它可以让您清楚地将内容分为
LocalDate
LocalTime
。要从日期/时间选择器执行转换,您可能会使用:

var dateAndTime = LocalDateTime.FromDateTime(appointmentDateTimeDate.Value);
LocalDate date = dateAndTime.LocalDate;
LocalTime time = dateAndTime.LocalTime;

正如其他人指出的那样,
DateTime
总是同时包含日期和时间成分。因此,尽管可以使用两个
DateTime
单独保存这两个实例,但在大多数情况下,建议在单个
DateTime
实例中同时保存这两个实例


您应该看看是否真的需要将两个值分开,或者应用程序是否可以将这两个值合并到一个属性中,这将使事情变得更简单。

我使用的是继承结构,其中基类保存日期,子类保存时间。所以我不得不这样做,不是出于选择这是一项大学作业;不过非常感谢
var dateAndTime = LocalDateTime.FromDateTime(appointmentDateTimeDate.Value);
LocalDate date = dateAndTime.LocalDate;
LocalTime time = dateAndTime.LocalTime;