Пример #1
0
        private Task UpdateGameStateForReadData(string id, GameStateModel state)
        {
            IRepository <Game>       repository = Repository;
            UpdateGameStateDataModel gameState  = new UpdateGameStateDataModel
            {
                Status          = state.Status,
                RedCastleAmount =
                    state.Castles?.Count(e => e.Army == Army.Red) ??
                    0,
                BlueCastleAmount =
                    state.Castles?.Count(e => e.Army == Army.Blue) ??
                    0,
                NeutrualCastleAmount =
                    state.Castles?.Count(e => e.Army == Army.Neutrual) ??
                    0
            };

            return(repository.UpdateStateAsync(id, gameState));
        }
Пример #2
0
 public static Task UpdateStateAsync(this IRepository <Game> repository, string id, UpdateGameStateDataModel state)
 {
     return(repository.Collection.UpdateOneAsync(e => e.Id == id, Builders <Game> .Update.Set(e => e.Status, state.Status).Set(e => e.RedCastleAmount, state.RedCastleAmount).Set(e => e.BlueCastleAmount, state.BlueCastleAmount).Set(e => e.NeutrualCastleAmount, state.NeutrualCastleAmount)));
 }