DateTime 为空字符串或 null?如何检查?
问:
如果日期时间为空,我想根据 null 值
检查日期时间以清空报告中的单元格。但我不知道如何执行此操作:它看起来像这样 1 /1/0001
如果它为空。并且我希望它是空单元格。
这是我的数据集中的数据类型:
这是我的列的表达式值:
=FormatDateTime(Fields!D_DateTime.Value,2)
Q:
I want to check the DateTime against null value
to empty the cell in my report if the datetime is null.but i don't know how to do this :it appears like this 1/1/0001
if it was null.and i want it to be empty cell.
This is the datatype in my dataset :
and this is the expression value of my column :
=FormatDateTime(Fields!D_DateTime.Value,2)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
正如我在评论中告诉您的,您应该检查您的日期是否为
DateTime.MinValue
(日期可以采用的最小值,即 01/01/0001)。As I told you in my comment, you should check if your date is
DateTime.MinValue
(the minimum value a date can assume, which is exactly 01/01/0001).非常感谢,我想这解决了我的问题。
Thanks a lot ,i think this fixes my problem.
由于 datetime 是一个结构体而不是类,即值类型而不是引用类型;它必须用某个值初始化。它不能有空值。
因此,要检查默认值,您应该检查与 DateTime.MinValue 的相等性
,即
As datetime is a struct rather than class i.e. a value type rather than a reference type; it must be initialized with some value. It cannot have null values.
Hence to check the default value you should check the equality with DateTime.MinValue
i.e.
将数据集中字段的类型 (
rd:TypeName
) 更改为System.Nullable (Of System.DateTime)
。然后您可以简单地测试=Fields!D_DateTime.Value Is Nothing
。Change the type of the field in the dataset (
rd:TypeName
) toSystem.Nullable (Of System.DateTime)
. Then you can simply test=Fields!D_DateTime.Value Is Nothing
.就像 @Marco 建议的那样,您可以检查
MinValue
。如果要将NULL
传递给可为 null 的参数,则可以对reportviewer
参数使用以下代码。Vb.Net
C#
Like @Marco suggested you can check for
MinValue
. And if you want to passNULL
to the nullable parameter, you can use the following code forreportviewer
parameter.Vb.Net
C#