コード例 #1
0
ファイル: SeedData.cs プロジェクト: SimenCTan/LearningNotes
        public static void Initialize(IServiceProvider serviceProvider)
        {
            using var movieContext = new MovieDbContext(serviceProvider.GetRequiredService <DbContextOptions <MovieDbContext> >());
            if (movieContext.Movie.Any())
            {
                return;
            }
            var movies = new List <Movie>
            {
                new Movie {
                    ReleaseDate = DateTime.Now, Genre = "Ghostbusters", Price = 7.90M, Title = "MvcMovie", Rating = "Mvc"
                },
                new Movie {
                    ReleaseDate = DateTime.Now, Genre = "Ghostbusters", Price = 8.90M, Title = "MvcMovie", Rating = "Mvc"
                }
            };

            var idea = new Idea()
            {
                DateCreated = new DateTime(2016, 8, 1),
                Description = "Totally awesome idea",
                Name        = "Awesome idea"
            };
            var session = new BrainstormSession()
            {
                Name        = "Test Session 1",
                DateCreated = new DateTime(2016, 8, 1)
            };

            session.AddIdea(idea);

            movieContext.Movie.AddRange(movies);
            movieContext.BrainstormSessions.Add(session);
            movieContext.SaveChanges();
        }
コード例 #2
0
        public OperationResultVo <Guid> SaveSession(BrainstormSessionViewModel vm)
        {
            try
            {
                BrainstormSession model;

                BrainstormSession existing = brainstormDomainService.GetById(vm.Id);
                if (existing != null)
                {
                    model = mapper.Map(vm, existing);
                }
                else
                {
                    model = mapper.Map <BrainstormSession>(vm);
                }

                if (vm.Id == Guid.Empty)
                {
                    brainstormDomainService.Add(model);
                    vm.Id = model.Id;
                }
                else
                {
                    brainstormDomainService.Update(model);
                }

                unitOfWork.Commit();

                return(new OperationResultVo <Guid>(model.Id));
            }
            catch (Exception ex)
            {
                return(new OperationResultVo <Guid>(ex.Message));
            }
        }
コード例 #3
0
        public void Add(BrainstormSession session)
        {
            int maxId = 0;

            if (_dbContext.BrainstormSessions.Any())
            {
                maxId = _dbContext.BrainstormSessions.Max(s => s.Id);
            }
            session.Id = maxId + 1;
            _dbContext.BrainstormSessions.Add(session);
            _dbContext.SaveChanges();
        }
コード例 #4
0
        public OperationResultVo <BrainstormSessionViewModel> GetMainSession()
        {
            try
            {
                BrainstormSession main = brainstormDomainService.Get(BrainstormSessionType.Main);

                BrainstormSessionViewModel vm = mapper.Map <BrainstormSessionViewModel>(main);

                return(new OperationResultVo <BrainstormSessionViewModel>(vm));
            }
            catch (Exception ex)
            {
                return(new OperationResultVo <BrainstormSessionViewModel>(ex.Message));
            }
        }
コード例 #5
0
        /// <summary>
        /// Get the most recent session of type
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        public OperationResultVo <BrainstormSessionViewModel> GetSession(Guid userId, BrainstormSessionType type)
        {
            try
            {
                BrainstormSession model = brainstormDomainService.GetAll().LastOrDefault(x => x.Type == type);

                BrainstormSessionViewModel vm = mapper.Map <BrainstormSessionViewModel>(model);

                return(new OperationResultVo <BrainstormSessionViewModel>(vm));
            }
            catch (Exception ex)
            {
                return(new OperationResultVo <BrainstormSessionViewModel>(ex.Message));
            }
        }
コード例 #6
0
 public static BrainstormSession GetTestSession()
 {
     var session = new BrainstormSession()
     {
         Name = "Test Session 1",
         DateCreated = new DateTime(2016, 8, 1)
     };
     var idea = new Idea()
     {
         DateCreated = new DateTime(2016, 8, 1),
         Description = "Totally awesome idea",
         Name = "Awesome idea"
     };
     session.AddIdea(idea);
     return session;
 }
コード例 #7
0
        private BrainstormSession GetTestSession()
        {
            var session = new BrainstormSession()
            {
                DateCreated = new DateTime(2016, 7, 2),
                Id          = 1,
                Name        = "Test One"
            };

            var idea = new Idea()
            {
                Name = "One"
            };

            session.AddIdea(idea);
            return(session);
        }
コード例 #8
0
        private BrainstormSession GetTestSession()
        {
            var testSession = new BrainstormSession()
            {
                Ideas = new List <Idea>()
                {
                    new Idea()
                    {
                        Id          = 1,
                        DateCreated = DateTime.Now,
                        Description = "some idea for tes",
                        Name        = "One"
                    }
                }
            };

            return(testSession);
        }
コード例 #9
0
        public OperationResultVo <Guid> Save(Guid currentUserId, BrainstormIdeaViewModel viewModel)
        {
            try
            {
                BrainstormSession session = brainstormDomainService.GetById(viewModel.SessionId);

                BrainstormIdea model;

                BrainstormIdea existing = brainstormDomainService.GetIdea(viewModel.Id);
                if (existing != null)
                {
                    model = mapper.Map(viewModel, existing);
                }
                else
                {
                    model = mapper.Map <BrainstormIdea>(viewModel);
                }

                model.SessionId = session.Id;

                if (model.Id == Guid.Empty)
                {
                    brainstormDomainService.AddIdea(model);
                }
                else
                {
                    brainstormDomainService.UpdateIdea(model);
                }

                gamificationDomainService.ProcessAction(viewModel.UserId, PlatformAction.IdeaSuggested);

                unitOfWork.Commit();

                return(new OperationResultVo <Guid>(model.Id));
            }
            catch (Exception ex)
            {
                return(new OperationResultVo <Guid>(ex.Message));
            }
        }
コード例 #10
0
 public Task UpdateAsync(BrainstormSession session)
 {
     _dbContext.Entry(session).State = EntityState.Modified;
     return(_dbContext.SaveChangesAsync());
 }
コード例 #11
0
 public Task AddAsync(BrainstormSession session)
 {
     _dbContext.BrainstormSessions.Add(session);
     return(_dbContext.SaveChangesAsync());
 }
 public void Setup()
 {
     _session = GetTestSession();
 }
コード例 #13
0
 public Task DeleteAsync(BrainstormSession session)
 {
     _dbContext.BrainstormSessions.Remove(session);
     return(_dbContext.SaveChangesAsync());
 }
コード例 #14
0
 public void Update(BrainstormSession session)
 {
     _dbContext.Entry(session).State = EntityState.Modified;
     _dbContext.SaveChanges();
 }