This is interesting:
SqlBoolean a = new SqlBoolean(true);
SqlBoolean b = new SqlBoolean(false);
SqlBoolean c = SqlBoolean.Null;
Console.WriteLine(a); // True
Console.WriteLine(b); // False
Console.WriteLine(c); // Null
Console.WriteLine((bool)a); // True
Console.WriteLine((bool)b); // False
if (c) {
Console.WriteLine("if evaluates SqlBoolean.Null = true");
}
else {
Console.WriteLine("if evaluates SqlBoolean.Null = false"); // this prints
}
Console.WriteLine((bool)c); // exception: SqlNullValueException
John.