في .net 2.0، يوجد نوع جديد لاغٍ، والذي يمكن استخدامه لتعيين قيم فارغة لأنواع القيم الأساسية، مثل
int k = 3;// نوع القيمة الفارغة (يشار إليه بالنوع الفارغ)
int m = null;//خطأ
int j = null;// النجاح من المثال أعلاه، يمكننا أن نرى أنه يمكن تعريف نوع القيمة الفارغة بعد نوع القيمة في C#، بينما في VB.NET، يمكنك القيام بذلك
Dim dtmVarName As Nullable(Of DateTime)
Dim intVarName As Nullable(Of Integer)
Dim bVarName As Nullable(Of Boolean)
تجدر الإشارة إلى أن النوع الخالي ليس نوع بيانات .NET جديد.
في الواقع، النوع الفارغ هو فئة عامة System.Nullable<T> محددة في مكتبة .NET، حيث T هو نوع قيمة قابل للاستبدال.
يمكن أيضًا كتابة int k = 3; كـ System.Nullable<int> k = 3;
يتم تنفيذ العمليات من خلال التحميل الزائد للمشغل لهذه الفئة.
يمكنك استخدام hasvalue لتحديد ما إذا كان قد تم تعيين قيمة للنوع الفارغ
if (dtmVarName.HasValue)
{
//...افعل شيئًا
}
http://www.cnblogs.com/jackyrong/archive/2006/08/26/486796.html