Example #1
0
        private void SaveButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                var   nickName      = NickNameTextBox.Text;
                Regex nickNameRegex = new Regex(@"^[a-zA-ZАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя][a-zA-ZАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя0-9]{3,11}$");

                if (nickName == null || !nickNameRegex.IsMatch(nickName))
                {
                    BrainItUpMessageBox.Warning("Bad nick name entered, please use letters and numbers.");
                    return;
                }

                _counter.User.NickName = nickName;
                //здесь мы добавляем имя юзера в таблицу и кол-во его баллов, то есть в БД саму
                Database.Entities.SaveChanges();

                Pages.RatingPage = new RatingPage();
                NavigationService.Navigate(Pages.RatingPage);
            }
            catch (Exception ex)
            {
                BrainItUpMessageBox.Error(ex);
            }
        }
        private async void Page_Loaded(object sender, RoutedEventArgs e)
        {
            try
            {
                await Database.Entities.UserAnswers.LoadAsync();

                _dataGridRating.ItemsSource = Database.Entities.
                                              UserAnswers.Local.
                                              AsQueryable().
                                              GetUserRating().
                                              OrderByDescending(x => x.Rate).Take(10);
            }
            catch (Exception ex)
            {
                BrainItUpMessageBox.Error(ex);
            }
        }
        private async void Page_Loaded(object sender, RoutedEventArgs e)
        {
            try
            {
                await Database.Entities.Questions.LoadAsync();

                var questions = Database.Entities.Questions.Local;

                Random rnd = new Random();

                //это случайный индекс вопроса, который будет выводиться пользователю
                //таким образом все вопросы выводятся в случайном порядке

                var questionsArray = questions.ToArray();

                _questionsRandomArray = questionsArray.RandomizeCollection().ToArray();

                LoadNextQuestionData();
            }
            catch (Exception ex)
            {
                BrainItUpMessageBox.Error(ex);
            }
        }