A abordagem mais comum é criar uma camada de mapeamento em seu aplicativo para receber um conjunto de campos e mapeá-los para o que seu aplicativo precisa.
Você está certo de que não existe
AS
projeção embutida no MongoDB. Eu acredito que você poderia fazer isso com a agregação no entanto:
- Não vejo por quê
- Será mais pesado e mais lento do que apenas fazê-lo no aplicativo.
Então, sim, eu continuaria escrevendo uma classe de mapeamento no aplicativo.