Cleaner Weg, um eine Null-Prüfung in C # zu tun? [Duplikat
Diese Frage hat hier bereits eine Antwort:
C # elegante Möglichkeit, um zu überprüfen, ob die Eigenschaft einer Eigenschaft null ist 21 answersAngenommen, ich habe diese Schnittstelle,
interface IContact
{
IAddress address { get; set; }
}
interface IAddress
{
string city { get; set; }
}
class Person : IPerson
{
public IContact contact { get; set; }
}
class test
{
private test()
{
var person = new Person();
if (person.contact.address.city != null)
{
//this will never work if contact is itself null?
}
}
}
Person.Contact.Address.City != null
(Dies funktioniert, um zu überprüfen, ob City null ist oder nicht.)
Diese Prüfung schlägt jedoch fehl, wenn die Adresse oder der Kontakt oder die Person selbst null ist.
Derzeit könnte ich mir folgende Lösung vorstellen:
if (Person != null && Person.Contact!=null && Person.Contact.Address!= null && Person.Contact.Address.City != null)
{
// Do some stuff here..
}
ibt es eine sauberere Möglichkeit, dies zu tu
Ich mag das @ wirklich nicnull
check wird ausgeführt als(something == null)
. Gibt es stattdessen einen anderen netten Weg, etwas wie das @ zu tusomething.IsNull()
Methode