El marco de inyección de dependencias de Unity de Microsoft se puede configurar mediante código o mediante el archivo de configuración de aplicaciones (app.config).¿Se debería configurar Unity en el código o archivo de configuración?
ejemplo Código:
IUnityContainer container = new UnityContainer()
.RegisterType<IInterface, ConcreteImplementation>();
Ejemplo de configuración:
<unity>
<containers>
<container>
<types>
<type type="IInterface, MyAssembly"
mapTo="ConcreteImplementation, MyAssembly" />
¿Cuáles son las ventajas/desventajas de cada enfoque? Puedo pensar en la ventaja obvia "Los usuarios pueden configurar fácilmente su aplicación", y la desventaja obvia "Los usuarios pueden romper fácilmente su aplicación", pero ¿hay algo menos obvio?
Duplicado: http://stackoverflow.com/questions/2512316/ioc-dependency-injection-please-explain-code-versus-xml –
No es un duplicado. Esa pregunta se refiere a cómo puede usar la configuración basada en código. Mi pregunta es por qué: cuáles son las compensaciones/beneficios. –
De acuerdo, es justo, intentaré responder en su lugar. –