コード例 #1
0
ファイル: StatisticsModel.cs プロジェクト: Haramil/Homework
 /// <summary>
 /// Считывает статистику из БД
 /// </summary>
 /// <returns>Список со статистикой</returns>
 public List <Statistic> GetStatisticsList()
 {
     using (StatisticsContext db = new StatisticsContext())
     {
         db.Statistics.Load();
         return(db.Statistics.Local.ToList());
     }
 }
コード例 #2
0
ファイル: StatisticsModel.cs プロジェクト: Haramil/Homework
        /// <summary>
        /// Добавляет статистику сыгранной игры в БД
        /// </summary>
        /// <param name="jsonString">Статистика сыгранной игры в виде JSON-строки</param>
        public void AddStatistics(string jsonString)
        {
            using (StatisticsContext db = new StatisticsContext())
            {
                db.Statistics.Add(JsonConvert.DeserializeObject <Statistic>(jsonString));
                db.SaveChanges();
            }
            List <Statistic> statistics = GetStatisticsList();

            // Отправка статистики всем клиентам
            StatisticsHub.Broadcast(jsonString, CalculatePlayerPercent(statistics, Player.Human),
                                    CalculatePlayerPercent(statistics, Player.Computer),
                                    CalculateSidePercent(statistics, GameState.TicWon),
                                    CalculateSidePercent(statistics, GameState.TacWon));
        }