¿Por qué no puedo usar el operador de propagación nulo en expresiones lambda?

A menudo uso un operador de propagación nulo en mi código porque me da un código más legible, especialmente en consultas largas, no tengo que verificar nulamente cada clase que se usa.

El siguiente código arroja un error de compilación que no podemos usar como operador de propagación nulo en lambda.

var cnt = humans.AsQueryable().Count(a => a.House?[0].Price == 5000);

El error :

Error CS8072 Un árbol de expresión lambda no puede contener un operador de propagación nulo.

¡C # podría traducir fácilmente el código anterior al código al siguiente código si realmente no puede hacer nada más!

var cnt = humans.AsQueryable().Count(a => a.House != null && a.House[0].Price == 5000);

Tengo curiosidad por qué C # no hace nada y simplemente arroja un error de compilación.

Respuestas a la pregunta(1)

Su respuesta a la pregunta