我正在尝试获取日期时间值,但这是可以为空的datetype问题。如何解决?
Public Function GetDate(ByVal kodg As Integer) As DateTime
Dim g = From dt In db.xDates _
Join f In db.xGrafiks On dt.КодД Equals f.DateKod _
Where f.Kod = kodg
Select New Date?(dt.Дата) ???
Return g ???
End Function
答案 0 :(得分:4)
g
将是IQueryable(Date?)
,这是一个集合,因此您首先必须检查是否有值。您可以使用FirstOrDefault()
(如果可能有多个结果或没有结果)或SingleOrDefault
(如果不应该有多个结果)来执行此操作。
然后你得到一个Date?
。然后,您可以使用HasValue
属性检查Date?
是否有值,如果是,则返回它。如果不是,您应该从函数中返回另一个Date
(也许DateTime.MinValue
?)。
或者您可以将函数的返回值更改为Date?
,然后从查询中返回可为空的日期。