Estoy trabajando en una aplicación ASP MVC 3 y estoy escribiendo un helper html personalizado. No es nada especial o enormemente complejo, pero necesitará una instancia de una interfaz desde el mapa de la estructura. Sé que puedo simplemente llamar a la fábrica de objetos de structuremaps desde el método, pero como el resto de la aplicación usa IoC en lugar de la ubicación del servicio, me gustaría mantenerlo así.Uso de IoC en los métodos de extensión
¿Hay alguna manera de insertar interfaces en los métodos de extensión desde dentro y la aplicación asp net mvc?
ACTUALIZACIÓN
Un ejemplo de lo que estoy haciendo podría ayudar:
public static class ShowUrl
{
public static string ForShow(this UrlHelper url, int showId)
{
var service = ObjectFactory.GetInstance<IPerformanceService>();
var showName = service.GetPerformanceTitle(showId);
return url.Action(MVC.Performance.Details(showId, showName.ToFriendlyUrl()));
}
}
que se utiliza como esto:
<a href='<%= Url.ForShow(1)%>'>
Esencialmente estoy tratando de construir una URL con una babosa de un ID de entidad. Tal vez estoy hablando de esto de una manera realmente tonta.
¿Está utilizando el MVC DependencyResolver? – mccow002