Cleaner maneira de fazer uma verificação nula em c #? [duplicado
Esta pergunta já tem uma resposta aqui:
C # maneira elegante de verificar se a propriedade de uma propriedade é nula 21 respostasuponha, eu tenho essa interfac
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
(Isso funciona para verificar se a cidade é nula ou não.)
No entanto, essa verificação falhará se Endereço, Contato ou Pessoa for nul
Atualmente, uma solução que eu conseguia pensar era:
if (Person != null && Person.Contact!=null && Person.Contact.Address!= null && Person.Contact.Address.City != null)
{
// Do some stuff here..
}
Existe uma maneira mais limpa de fazer isso?
Eu realmente não gosto donull
verificação sendo feita como(something == null)
. Em vez disso, existe outra maneira legal de fazer algo como osomething.IsNull()
método?