public static void Bootstrap() { MongoDBRepositoryContext.RegisterConventions(); BsonClassMap.RegisterClassMap <ShoppingCart>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <SalesOrder>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <User>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <UserRole>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <Category>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <Categorization>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <Product>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <ShoppingCartItem>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); }); BsonClassMap.RegisterClassMap <SalesLine>(s => { s.AutoMap(); s.SetIgnoreExtraElements(true); s.UnmapProperty <SalesOrder>(p => p.SalesOrder); // bypass circular reference. }); }
public static void AppInit_MongoDBRepository(object sender, AppInitEventArgs e) { UnityContainer c = e.ObjectContainer.GetWrappedContainer <UnityContainer>(); c.RegisterType <IMongoDBRepositoryContextSettings, MongoDBRepositoryContextSettings>(new ContainerControlledLifetimeManager()) .RegisterType <IRepositoryContext, MongoDBRepositoryContext>() .RegisterType <IRepository <Customer>, MongoDBRepository <Customer> >(); MongoDBRepositoryContext.RegisterConventions(); }