Actualmente tengo un ActionFilter que obtiene el nombre de los usuarios actuales de HttpContext y lo pasa a la acción que lo usa en un método de servicio. por ejemplo:ASP.NET MVC: HTTPContext e Inyección de Dependencia
Service.DoSomething(userName);
Ahora tengo una razón para hacer esto no en el nivel de acción sino en el nivel del constructor del controlador. Actualmente estoy usando el mapa de estructura para crear controladores e inyectar el servicio. Estoy mirando algo como:
public interface IUserProvider
{
string UserName { get; }
}
public class HttpContextUserProvider : IUserProvider
{
private HttpContext context;
public HttpContextUserProvider(HttpContext context)
{
this.context = context;
}
public string UserName
{
get
{
return context.User.Identity.Name;
}
}
}
Dicho esto, mi foo COI está muy débil ya que este es el primer proyecto en el que he utilizado en.
Así que mi pregunta es ... ¿cómo puedo decir que el mapa de estructura pase en HttpContext en el constructor para HttpContextUserProvider? Esto parece extraño ... No estoy seguro de cómo pensar en HttpContext.
¿Qué quiere decir con "Añadir parámetros de tipo genérico a las bolsas"? Suena intrigante –
proporciona envolturas sólidas en la Sesión –
¿Tiene algún código/enlace de muestra, esto parece interesante? Soy un poco nuevo en DI, así que no entiendo esto correctamente, cualquier ayuda/consejo sería apreciado ... – Haroon