/// <summary> /// Configure the data system to map requests for User type onto TUser via Identity mechanisms /// </summary> public virtual void InitialiseDataApi() { ContentTypeHierarchy.RegisterType(typeof(User)); ContentTypeHierarchy.RegisterType(typeof(TUser)); var sys = LyniconSystem.Instance; var extender = LyniconSystem.Instance.Extender; extender.RegisterForExtension(typeof(User)); //extender.RegisterExtensionType(typeof(LyniconIdentityUser)); var efDSFactory = new EFDataSourceFactory <TContext>(sys); var appDbRepository = new BasicRepository(sys, efDSFactory); efDSFactory.DbSetSelectors[typeof(TUser)] = db => db.Users.AsNoTracking(); efDSFactory.ContextLifetimeMode = ContextLifetimeMode.PerCall; // We DON'T want to register TUser with CompositeTypeManager var basicCollator = new BasicCollator(sys); Collator.Instance.Register(typeof(TUser), new BasicCollator(sys)); Repository.Instance.Register(typeof(TUser), appDbRepository); // override existing collator registration for User var identityAdaptorCollator = new IdentityAdaptorCollator <TUser, TUserManager>(sys); Collator.Instance.Register(typeof(User), identityAdaptorCollator); //Repository.Instance.Register(typeof(User), new BasicRepository()); }
/// <summary> /// Configure the data system to map requests for User type onto TUser via Identity mechanisms /// </summary> public virtual void InitialiseDataApi() { ContentTypeHierarchy.RegisterType(typeof(TUser)); CompositeTypeManager.Instance.RegisterExtensionType(typeof(LyniconIdentityUser)); var efDSFactory = new EFDataSourceFactory <TContext>(); var appDbRepository = new BasicRepository(efDSFactory); efDSFactory.DbSetSelectors[typeof(TUser)] = db => db.Users.Include(u => u.Roles); efDSFactory.ContextLifetimeMode = ContextLifetimeMode.PerCall; // We DON'T want to register TUser with CompositeTypeManager Collator.Instance.Register(typeof(TUser), new BasicCollator(Repository.Instance)); Repository.Instance.Register(typeof(TUser), appDbRepository); // override existing collator registration for User var identityAdaptorCollator = new IdentityAdaptorCollator <TUser, TUserManager>(GetUserManager); identityAdaptorCollator.Repository = Repository.Instance; Collator.Instance.Register(typeof(User), identityAdaptorCollator); }