예제 #1
0
        public void Migrate()
        {
            var topics = SourceDbContext.Topics.ToList();

            foreach (var oldTopic in topics)
            {
                var newEntity = new Topic()
                {
                    Id       = _topicKeyMapper.MapKey(oldTopic.Id),
                    PostDate = oldTopic.PostDate,
                    Subject  = oldTopic.Subject,
                    ForumId  = _forumKeyMapper.MapKey(oldTopic.ForumId),
                    PosterId = _userKeyMapper.MapKey(oldTopic.PosterId)
                };

                TargetDbContext.Topics.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #2
0
        public void MigrateProjections()
        {
            var forums = SourceDbContext.Forums.ToList();

            foreach (var oldForum in forums)
            {
                var newForum = TargetDbContext.Forums
                               .First(f => f.Id == _forumKeyMapper.MapKey(oldForum.Id));

                newForum.LastPostDate     = oldForum.LastPostDate;
                newForum.LastPostPosterId = oldForum.LastPostPosterId != null?_userKeyMapper.MapKey((int)oldForum.LastPostPosterId) : (Guid?)null;

                newForum.LastPostTopicId = oldForum.LastPostTopicId != null?_topicKeyMapper.MapKey(oldForum.LastPostTopicId) : (Guid?)null;
            }

            TargetDbContext.SaveChanges();
        }
예제 #3
0
        public void Migrate()
        {
            var profileSyncs = SourceDbContext.ProfileSyncs.ToList();

            foreach (var profileSync in profileSyncs)
            {
                var newEntity = new ProfileSync()
                {
                    Id     = _profileSyncKeyMapper.MapKey(profileSync.Id),
                    UserId = _userKeyMapper.MapKey(profileSync.AccountId)
                };

                TargetDbContext.ProfileSyncs.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #4
0
        public void Migrate()
        {
            var forumLastVisits = SourceDbContext.ForumLastVisits.ToList();

            foreach (var oldForumLastVisit in forumLastVisits)
            {
                var newEntity = new ForumLastVisit()
                {
                    Id            = _forumLastVisitKeyMapper.MapKey(oldForumLastVisit.Id),
                    LastVisitDate = oldForumLastVisit.LastVisitDate,
                    UserId        = _userKeyMapper.MapKey(oldForumLastVisit.AccountId)
                };

                TargetDbContext.ForumLastVisits.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #5
0
        public void Migrate()
        {
            var oldUnreadPosts = SourceDbContext.UnreadPosts.ToList();

            foreach (var oldUnreadPost in oldUnreadPosts)
            {
                var newEntity = new UnreadPost()
                {
                    Id     = _unreadPostKeyMapper.MapKey(oldUnreadPost.Id),
                    PostId = _postKeyMapper.MapKey(oldUnreadPost.PostId),
                    UserId = _userKeyMapper.MapKey(oldUnreadPost.AccountId)
                };

                TargetDbContext.UnreadPosts.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #6
0
        public void Migrate()
        {
            var oldSettings = SourceDbContext.Settings.ToList();

            foreach (var oldSetting in oldSettings)
            {
                var newEntity = new Setting()
                {
                    Id     = _settingKeyMapper.MapKey(oldSetting.Id),
                    Name   = oldSetting.Name,
                    Value  = oldSetting.Value,
                    UserId = _userKeyMapper.MapKey(oldSetting.AccountId)
                };

                TargetDbContext.Settings.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #7
0
        public void Migrate()
        {
            var signUps = SourceDbContext.SignUps.ToList();

            foreach (var signUp in signUps)
            {
                var newEntity = new SignUp()
                {
                    Id      = _signUpKeyMapper.MapKey(signUp.Id),
                    Type    = StringToSignUpType.Convert(signUp.Type),
                    EventId = _eventKeyMapper.MapKey(signUp.EventId),
                    UserId  = _userKeyMapper.MapKey(signUp.AccountId)
                };

                TargetDbContext.SignUps.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #8
0
        public void Migrate()
        {
            var oldFeatureToggles = SourceDbContext.FeatureToggles.ToList();

            foreach (var oldFeatureToggle in oldFeatureToggles)
            {
                var newEntity = new FeatureToggle()
                {
                    Id      = _featureToggleKeyMapper.MapKey(oldFeatureToggle.Id),
                    Feature = oldFeatureToggle.Feature,
                    Toggle  = oldFeatureToggle.Toggle,
                    UserId  = _userKeyMapper.MapKey(oldFeatureToggle.ToggleForId)
                };

                TargetDbContext.FeatureToggles.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #9
0
        public void Migrate()
        {
            var accounts = SourceDbContext.Accounts.ToList();

            foreach (var account in accounts)
            {
                var user = new User
                {
                    Id          = _userKeyMapper.MapKey(account.Id),
                    ExternalId  = Guid.NewGuid().ToString(),
                    DisplayName = account.DisplayName,
                    Email       = account.Email
                };

                TargetDbContext.Users.Add(user);
            }

            TargetDbContext.SaveChanges();
        }
예제 #10
0
        public void Migrate()
        {
            var oldFeatureUses = SourceDbContext.FeatureUses.ToList();

            foreach (var oldFeatureUse in oldFeatureUses)
            {
                var newEntity = new FeatureUse()
                {
                    Id       = _featureUseKeyMapper.MapKey(oldFeatureUse.Id),
                    UsedOn   = oldFeatureUse.UsedOn,
                    Feature  = oldFeatureUse.Feature,
                    RawData  = oldFeatureUse.RawData,
                    UsedById = oldFeatureUse.UsedById != null?_userKeyMapper.MapKey((int)oldFeatureUse.UsedById) : (Guid?)null
                };

                TargetDbContext.FeatureUses.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
        public void Migrate()
        {
            var comments = SourceDbContext.Comments.ToList();

            foreach (var comment in comments)
            {
                var newEntity = new Comment()
                {
                    Id       = _commentKeyMapper.MapKey(comment.Id),
                    PostDate = comment.PostDate,
                    Content  = comment.Message,
                    GroupId  = _commentGroupKeyMapper.MapKey(comment.GroupId),
                    PosterId = _userKeyMapper.MapKey(comment.PosterId)
                };

                TargetDbContext.Comments.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #12
0
        public void Migrate()
        {
            var claims = SourceDbContext.CharacterClaims.ToList();

            foreach (var claim in claims)
            {
                var newClaim = new GameCharacterClaim()
                {
                    Id              = _gameCharacterClaimKeyMapper.MapKey(claim.Id),
                    FromTime        = claim.FromTime,
                    EndTime         = claim.EndTime,
                    UserId          = _userKeyMapper.MapKey(claim.AccountId),
                    GameCharacterId = _gameCharacterKeyMapper.MapKey(claim.CharacterId)
                };

                TargetDbContext.GameCharacterClaims.Add(newClaim);
            }

            TargetDbContext.SaveChanges();
        }
        public void Migrate()
        {
            var posts = SourceDbContext.Posts.ToList();

            foreach (var oldPost in posts)
            {
                var newEntity = new Post()
                {
                    Id       = _postKeyMapper.MapKey(oldPost.Id),
                    PostDate = oldPost.PostDate,
                    Content  = oldPost.Message,
                    PosterId = _userKeyMapper.MapKey(oldPost.PosterId),
                    TopicId  = _topicKeyMapper.MapKey(oldPost.TopicId)
                };

                TargetDbContext.Posts.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
예제 #14
0
        public void Migrate()
        {
            var oldCalendarExports = SourceDbContext.CalendarExports.ToList();

            foreach (var oldCalendarExport in oldCalendarExports)
            {
                var newEntity = new CalendarExport()
                {
                    Id            = _calendarExportKeyMapper.MapKey(oldCalendarExport.Id),
                    ExportNew     = oldCalendarExport.ExportNew,
                    ExportAbsence = oldCalendarExport.ExportAbsence,
                    Secret        = oldCalendarExport.Secret,
                    UserId        = _userKeyMapper.MapKey(oldCalendarExport.AccountId)
                };

                TargetDbContext.CalendarExports.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
        public void Migrate()
        {
            var oldActivityQueueItems = SourceDbContext.ActivityQueueItems.ToList();

            foreach (var oldActivityQueueItem in oldActivityQueueItems)
            {
                var newEntity = new ActivityQueueItem()
                {
                    Id           = _activityQueueItemKeyMapper.MapKey(oldActivityQueueItem.Id),
                    ActivityType = oldActivityQueueItem.ActivityType,
                    ActivityOn   = oldActivityQueueItem.ActivityOn,
                    RawData      = oldActivityQueueItem.RawData,
                    ProcessedOn  = oldActivityQueueItem.ProcessedOn,
                    ActivityById = oldActivityQueueItem.ActivityById != null?_userKeyMapper.MapKey((int)oldActivityQueueItem.ActivityById) : (Guid?)null
                };

                TargetDbContext.ActivityQueueItems.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }
        public void Migrate()
        {
            var events = SourceDbContext.Events.ToList();

            foreach (var oldEvent in events)
            {
                var newEntity = new Event()
                {
                    Id             = _eventKeyMapper.MapKey(oldEvent.Id),
                    InviteTime     = oldEvent.InviteTime,
                    StartTime      = oldEvent.StartTime,
                    EndTime        = oldEvent.EndTime,
                    Name           = oldEvent.Name,
                    Description    = oldEvent.Description,
                    State          = StringToEventState.Convert(oldEvent.State),
                    CommentGroupId = _commentGroupKeyMapper.MapKey(oldEvent.CommentGroupId),
                    OrganiserId    = _userKeyMapper.MapKey(oldEvent.OrganiserId)
                };

                TargetDbContext.Events.Add(newEntity);
            }

            TargetDbContext.SaveChanges();
        }