コード例 #1
0
 public async Task <int> CountPositionsAsync(int electionId)
 {
     using (var context = new StudentElectionContext())
     {
         return(await context.Positions
                .Where(p => p.ElectionId == electionId)
                .CountAsync());
     }
 }
コード例 #2
0
 public async Task <int> GetMaxRankAsync(int electionId)
 {
     using (var context = new StudentElectionContext())
     {
         return(await context.Positions
                .Where(p => p.ElectionId == electionId)
                .MaxAsync(p => p.Rank));
     }
 }
コード例 #3
0
        public async Task <IEnumerable <PositionModel> > GetPositionsAsync(int electionId)
        {
            using (var context = new StudentElectionContext())
            {
                var positions = context.Positions.Where(p => p.ElectionId == electionId)
                                .OrderBy(p => p.Rank);

                return(await _mapper.ProjectTo <PositionModel>(positions)
                       .ToListAsync());
            }
        }
コード例 #4
0
        public async Task DeletePositionAsync(PositionModel model)
        {
            using (var context = new StudentElectionContext())
            {
                var position = await context.Positions.SingleOrDefaultAsync(p => p.Id == model.Id);

                context.Positions.Remove(position);

                await context.SaveChangesAsync();
            }
        }
コード例 #5
0
        public async Task UpdatePositionAsync(PositionModel model)
        {
            using (var context = new StudentElectionContext())
            {
                var position = await context.Positions.SingleOrDefaultAsync(p => p.Id == model.Id);

                _mapper.Map(model, position);

                await context.SaveChangesAsync();
            }
        }