Es ist technisch möglich für dieses Feld null zu sein:
var name = Assembly.GetExecutingAssembly().GetName();
name.Version = null;
Console.WriteLine(name.Version == null); // true
Aber ich kann es nicht glauben, von irgendwelchen Umständen, in denen null sein würde. Da es trivial ist zu überprüfen, würde ich einfach eine Null-Prüfung hinzufügen und eine benutzerdefinierte Ausnahme auslösen, wenn es Null ist, da die Diagnose einer NullReferenceException
kann schwierig sein, weil Sie keinen Hinweis auf erhalten, was ist null andere als die Stapelverfolgung.
BTW: Es sollte 'Version myV = ...' lesen, sonst wird es nicht kompilieren. –
Mit ReSharper auf 'Assembly.GetExecutingAssembly()? GetName() ?. Version? .Build' schlägt es vor, dass die ersten beiden'? 'Redundant sind (d. H. Nicht null sein können), aber nicht das letzte'? '. –
@Uwekeim, wie kann man 'null' für' Version' bekommen? – techspider