Como emular C # 6 nulo-condicional em C # <6
Com o C # 6.0 eu posso fazer isso
var isEqual = x.Id == y.Id
&& x.UpdatedAt == y.UpdatedAt
&& x.Name == y.Name
&& x.RulesUrl == y.RulesUrl
&& x.OngoingChallenges?.Count == y.OngoingChallenges?.Count
&& x.MembershipIds?.Count == y.MembershipIds?.Count;
Existe alguma solução legal para fazer isso com C # <6.0?
Quero dizer esta parte
&& x.OngoingChallenges?.Count == y.OngoingChallenges?.Count
&& x.MembershipIds?.Count == y.MembershipIds?.Count;
Porque em projetos antigos, não temos possibilidade de usar o C # 6.0. Como escreverisEqual
eficientemente?