Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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# - Fatal编程技术网

C# 使用;如果;关于时间文字(格式化帮助)

C# 使用;如果;关于时间文字(格式化帮助),c#,C#,我有一个时间对象,如果为null,出于某种原因会被解释为00:00:00。如果它为空,我需要做一个测试,但现在我做不到,所以我需要等效的: if (TimeObject == 00:00:00) {... 这个if语句的格式是什么?首先,C不支持时间文本,因此对于标准C编译器来说,00:00:00没有意义 其次,为了处理时间,您需要使用或结构 第三,因为这些是结构,所以它们永远不能是null——它们有默认值,但不允许DateTime dt=null如果您想要一个可为空的结构,请使用(因此Dat

我有一个时间对象,如果为null,出于某种原因会被解释为
00:00:00
。如果它为空,我需要做一个测试,但现在我做不到,所以我需要等效的:

if (TimeObject == 00:00:00) {...
这个if语句的格式是什么?

首先,C不支持时间文本,因此对于标准C编译器来说,
00:00:00
没有意义

其次,为了处理时间,您需要使用或结构


第三,因为这些是结构,所以它们永远不能是
null
——它们有
默认值,但不允许
DateTime dt=null如果您想要一个可为空的结构,请使用(因此
DateTime?
TimeSpan?

您可以包括您的时间对象的定义吗?这个“时间”对象是什么?如果它是一个
系统.DateTime
,我很怀疑它的值是否为“00:00:00”。C#(尚未)中没有
DateTime
文本。如果你的
TimeObject
为null,那么简单的
TimeObject==null
应该可以工作。如果它被“解释”(由谁?)为
00:00:00
,那么它可能不是空的。但是什么是
TimeObject
呢?如果你的TimeObject是
System.TimeSpan
类型,你可能会检查
TimeObject==TimeSpan.Zero
谢谢,我会把它改成一个可为空的类型。如果TimeObject只是一个结构,那么一定要将它与
newtimeobject()
进行比较,省略任何参数都可以完成您希望完成的工作?我仍然会将其设置为可空,但以防您出于任何原因无法访问DatTime代码。是的,将结构与
new\u__;()
进行比较会起作用,但阅读起来可能会产生误导,这就是为什么我更喜欢
default(\u__;)
的原因
DateTime
是.NET Framework的一部分-如果您没有访问权限,您使用的是C#的实现,您应该在问题中指定。老实说,您甚至不知道默认值,谢谢您的评论。