Here is simplest piece of code
Dim testInvoiceDate As DateTime? = If(String.IsNullOrEmpty(Nothing),
Nothing,
New DateTime(2018, 3, 20))
Why variable testInvoiceDate is not Nothing , but #1/1/0001 12:00:00 AM# ?!
That is very weird !
The If-statement will return the same datatype for both cases.
Because the return-type in the False-case is DateTime, the return-type is the DateTime-default-value for the True-case.
Default for DateTime is DateTime.MinValue which is #1/1/0001 12:00:00 AM#.
This will work as expected:
Dim testInvoiceDate As DateTime? = If(String.IsNullOrEmpty(Nothing),
Nothing,
New DateTime?(New Date(2018, 3, 20)))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With