Absolutely no difference. This is just your style of preference.
These two lines of code generate exactly the same IL code:
if (!v.HasValue) if (v == null)
You can see in IL that in both cases Nullable :: get_HasValue () is called.
Sorry, I made a sample in C #, not in VB.
source share