public static void Main()
Guid? emptyGuid = Guid.Empty;
Guid? filledGuid = Guid.NewGuid();
if (nullGuid.IsNullOrDefault()){
Console.WriteLine("It's null or default!");
if (emptyGuid.IsNullOrDefault()){
Console.WriteLine("It's null or default!");
if (filledGuid.IsNullOrDefault()){
Console.WriteLine("It's null or default!");
Console.WriteLine("Hello World");
public static class NullableExtensions
public static bool IsNullOrDefault<T>(this T? self) where T : struct
return !self.HasValue || self.Value.Equals(default(T));