Exemplo n.º 1
0
        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);
        }