Qualcuno ha avviato un progetto per eseguire il CIO al momento della compilazione (eventualmente utilizzando Roslyn o Linq MethodInfo emit)?
La mia esperienza con i contenitori IOC è stata finora eccezionale, rilevando alcuni piccoli problemi
- Molti contenitori IOC sono lenti all'avvio, poiché gran parte della logica di risoluzione si verifica qui
- Spesso è difficile garantire che la risoluzione sia possibile, poiché la compilazione non garantisce più che il costruttore possa essere chiamato
- Spesso i contenitori IOC aggiungono un piccolo sovraccarico al runtime (alcuni non sono nemmeno piccoli, spesso quelli che si avviano rapidamente funzionano lentamente)
Mi sembra che la soluzione ideale sarebbe quella di aggiungere un passo di compilazione alla catena di build che aggiunge una classe Factory anziché IOC.
Qualcuno l'ha già fatto? In caso contrario, perché no?