No public constructor is available for type System.Security.Principal.IIdentity

46 Views Asked by At

I face error when injecting dependencies. No public constructor is available for type

System.Security.Principal.IIdentity

var container = new UnityContainer();    
container.RegisterType<IUnitOfWork, UnitOfWork>();
container.RegisterType<IUserBiz, UserBiz>();
container.RegisterType<User>(new InjectionConstructor());
container.RegisterType<ClaimsIdentity>(new InjectionConstructor());
container.RegisterType<UserDTO >();
container.RegisterType<IBiz<UserDTO>>();
container.RegisterType<UserAccess>(new InjectionConstructor());
container.RegisterType<UserGroup>(new InjectionConstructor());
container.RegisterType<ILookupBiz, LookupBiz>();
container.RegisterType<IRepository<User>, EFRepository<User>>();


container.RegisterType<DbContext, ToptecDB>();



container.RegisterType(typeof(ISecureDataFormat<>), typeof(SecureDataFormat<>));
container.RegisterType<ITextEncoder, Base64UrlTextEncoder>();
container.RegisterType<IDataSerializer<AuthenticationTicket>, TicketSerializer>();
container.RegisterType<IDataProtector>(new ContainerControlledLifetimeManager(),
new InjectionFactory(c => new DpapiDataProtectionProvider().Create("Toptec"))); 
container.RegisterType<AccountController>(new InjectionConstructor());
0

There are 0 best solutions below