Problema AutoFAC y MVC4 al resolver -> Por favor, compruebe mi código
-
21-12-2019 - |
Pregunta
Estoy usando AutoFac con MVC4, pero de alguna manera al intentar resolverlo falla.No recibo ningún error durante las registraciones.El código se ve así:
public void Register()
{
List<Assembly> assemblies = new List<Assembly>();
assemblies.Add(Assembly.Load("KidsWear.DataLayer"));
assemblies.Add(Assembly.Load("KidsWear.Repositories"));
assemblies.Add(Assembly.Load("KidsWear.Contexts"));
assemblies.Add(Assembly.Load("KidsWear.Entities"));
assemblies.Add(Assembly.GetExecutingAssembly());
var builder = new ContainerBuilder();
builder.RegisterAssemblyTypes(assemblies.ToArray()).AsImplementedInterfaces();
builder.RegisterControllers();
//builder.RegisterControllers(Assembly.GetExecutingAssembly());
var container = builder.Build();
// test -> isRegistered returns fals
var isRegistered = container.IsRegistered(typeof(IProductRepository));
// This line raises error: The requested service //KidsWear.Repositories.IProductRepository' has not been registered.
var concrete = container.Resolve<IProductRepository>();
// End test
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
}
Tengo todas mis interfaces dentro de "Kidswear.Repositories", la implementación real está dentro de "Kidswear.datalayer", "Kidswear.Contexts" tiene el repositorio y contexto genéricos.La interfaz de producción de producción se ve como abajo:
public interface IProductRepository : IGenericRepository<Product>
{
}
El repositorio de productos se here la heredación de genericRepository y iProducTrepositorySity, como este:
public class ProductRepository : GenericRepository<Product>, IProductRepository
{
public ProductRepository()
{
}
//Todo: add any extra subs specific to Product
}
¿Puede alguien decirme por qué este registro no funciona y qué es este error?Simplemente en el modo de depuración si se muevo en el contenedor, puedo ver que se ha inicializado.
Muchas gracias
Solución
Este código exacto funcionó perfectamente bien.En realidad no estoy seguro de cuál era el problema.¡No estoy seguro si Visual Studio necesitaba un reinicio o autofac estaba jugando mal !!!