Gestisci configurazione contenitore autofac
-
22-09-2019 - |
Domanda
Uno dei membri del mio team ha deciso di utilizzare all'autofac su uno dei nostri servizi e perché volevamo provarlo abbiamo bloccato con esso.
Ora è passato del tempo e il metodo di impostazione container è cresciuto! E 'così grande che stiamo avendo problemi con esso.
Splitting in su non ha portato i risultati abbiamo cercato. Forse stiamo solo usando sbagliato.
Quindi la mia domanda è: come possiamo gestire la configurazione del contenitore? Possiamo scarichiamo in XML o ci sono altre buone pratiche?
Soluzione
Ci sono molti modi per gestire l'installazione contenitore con autofac.
Uno dei modi più comuni è quello di utilizzare un Module
e registrarlo con il costruttore. È possibile rompere più gruppi di registrazione in questo modo:
public class DALModule : Module
{
protected override void Load(ContainerBuilder builder)
{
builder.Register<SomeDataSomething>().As<IDataSomething>();
builder.Register<SomeOtherSomething( c => SomeOtherSomething.Create());
//and so on
}
}
Quindi registrare questi moduli rotto con il costruttore sia tramite codice o XML.
(Una semplice chiamata al builder.RegisterModule( new DALModule())
avrebbe fatto qui). Vedere la pagina wiki sul strutturazione con moduli .
In alternativa, è possibile utilizzare solo i file XML (o usare XML e moduli insieme). Vedere la pagina wiki sul XML di configurazione per questo.