I don't like the first option. Not only is it redundant, but a simple typo will introduce a bug.
Consider this
bool b = false;
if (b = true) {
Console.WriteLine("true");
}
Obviously the code will output "true" but that was probably not the intention of the programmer.
Fortunately tools like Resharper warns against this, but it compiles with the default settings (*).
Using the bool directly will remove the issue entirely.
(*) To be fair, VS also warns against this and if you turn on Warnings as errors it won't even compile.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…