protected void Application_Start() { //先读config Jtext103.StringConfig.ConfigString.Load(HttpRuntime.AppDomainAppPath + "Static\\StringConfig"); AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); //FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); //BundleConfig.RegisterBundles(BundleTable.Bundles); Configure(System.Web.Http.GlobalConfiguration.Configuration); string db = ConfigurationSettings.AppSettings["DataBase"]; string eventHandler = ConfigurationSettings.AppSettings["EventHandler"]; string connection = @"mongodb://115.156.252.5:27017"; //new service and inject to entity MongoDBRepository <Entity> entityRepository = new MongoDBRepository <Entity>(connection, db, "volunteer"); MongoDBRepository <Message> messageRepository = new MongoDBRepository <Message>(connection, db, "message"); MongoDBRepository <Message> feedRepository = new MongoDBRepository <Message>(connection, db, "feed"); MongoDBRepository <TagEntity> activityTagRepository = new MongoDBRepository <TagEntity>(connection, db, "activityTag"); MongoDBRepository <TagEntity> affiliationRepository = new MongoDBRepository <TagEntity>(connection, db, "affiliation"); MongoDBRepository <TokenModel> tokenRepository = new MongoDBRepository <TokenModel>(connection, db, "token"); MongoDBRepository <AuthorizationModel> authorizationRepository = new MongoDBRepository <AuthorizationModel>(connection, "Volunteer", "authorization"); MongoDBRepository <Event> eventRepository = new MongoDBRepository <Event>(connection, db, "event"); MongoDBRepository <Subscriber> subscriberRepository = new MongoDBRepository <Subscriber>(connection, db, "subscriber"); MongoDBRepository <BadgeDescription> badgeDescriptionRepository = new MongoDBRepository <BadgeDescription>(connection, db, "badgeDescription"); MongoDBRepository <BadgeEntity> badgeEntityRepository = new MongoDBRepository <BadgeEntity>(connection, db, "badgeEntity"); MongoDBRepository <FriendRelationshipEntity> friendRelationshipEntityRepository = new MongoDBRepository <FriendRelationshipEntity>(connection, db, "friendRelationship"); MongoDBRepository <ActionValidationModel> actionValidationRepository = new MongoDBRepository <ActionValidationModel>(connection, db, "actionValidation"); MongoDBRepository <CommentEntity> commentRepository = new MongoDBRepository <CommentEntity>(connection, db, "comment"); MongoDBRepository <BlogPostEntity> summaryRepository = new MongoDBRepository <BlogPostEntity>(connection, db, "summary"); //初始化service VolunteerService myService = new VolunteerService(entityRepository); TokenService tokenService = new TokenService(tokenRepository); MessageService messageService = new MessageService(messageRepository); MessageService feedService = new MessageService(feedRepository); TagService activityTagService = new TagService(activityTagRepository); TagService affiliationService = new TagService(affiliationRepository); ActionValidationService actionValidationService = new ActionValidationService(actionValidationRepository); BlogService blogService = new BlogService(commentRepository, summaryRepository); Entity.SetServiceContext(myService); EventService.InitService(eventRepository, subscriberRepository, 100, 1000, eventHandler); BadgeService.InitService(badgeDescriptionRepository, badgeEntityRepository); FriendService.InitService(friendRelationshipEntityRepository); ValidationService.InitService(tokenService, myService, authorizationRepository); myService.InitVolunteerService(messageService, feedService, activityTagService, affiliationService, actionValidationService, blogService); //新建badgeDescription BadgeService.RegisterBadgeDescriptions(getIBadge(EventService.EventHandlerList)); ShortMessageService shortMessageService = new ShortMessageService("VerifyShortMessageSenderAccount.xml"); MailService mailService = new MailService("NoReplyMailSenderAccount.xml"); //setActivityCover(myService); }