Pregunta

¿Cómo modifico lo siguiente de AutoFAC para usar el localizador de servicio común (donde _context es de tipo icomponentContext):

var query = _context.Resolve<IContentQuery>(TypedParameter.From<IContentManager>(this));

El código anterior se toma del huerto y estoy tratando de eliminar la dependencia de AutoFAC. Por lo general, intentaría algo como:

var query = ServiceLocator.Current.GetInstance<IContentQuery>();

Sin embargo, esto devuelve NULL y no puedo ver cómo manejar las cosas de Parameter Typed, ya que no entiendo lo que está haciendo.

Realmente agradecería que alguien pudiera ayudar. Gracias

¿Fue útil?

Solución

A TypedParameter Proporciona un valor adicional al constructor del componente que se está resolviendo. En este caso el subyacente ContextQuery Aceptará un parámetro de tipo IContentManager con el valor this siendo aprobado.

El localizador de servicios comunes no admite la parametrización, por lo que probablemente necesite usar las características específicas de su contenedor IOC subyacente.

Espero que esto ayude. Mella

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top