Ejemplo n.º 1
0
        private void buttonSave_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(textBoxHeader.Text) ||
                string.IsNullOrEmpty(textBoxText.Text) ||
                string.IsNullOrEmpty(textBoxAuthor.Text) ||
                comboBoxBlog.SelectedValue == null)
            {
                MessageBox.Show("Заполните все поля", "Ошибка",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            var regex = new Regex(@"[.]$");

            if (regex.IsMatch(textBoxHeader.Text))
            {
                MessageBox.Show("В конце заголовка не полагается ставить точку", "Предупреждение",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            regex = new Regex(@"\d");
            if (regex.IsMatch(textBoxAuthor.Text))
            {
                MessageBox.Show("Имя автора не может содержать цифр", "Предупреждение",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            try
            {
                var dateTime = (id.HasValue) ? cLogic.Read(
                    new CommentBindingModel {
                    Id = id
                })?[0].CreationDate : DateTime.Now;
                cLogic?.CreateOrUpdate(new CommentBindingModel
                {
                    Id           = id,
                    Header       = textBoxHeader.Text,
                    Text         = textBoxText.Text,
                    Author       = textBoxAuthor.Text,
                    BlogId       = (comboBoxBlog.SelectedItem as BlogViewModel).Id,
                    CreationDate = (DateTime)dateTime
                });
                MessageBox.Show("Сохранение прошло успешно", "Сообщение",
                                MessageBoxButtons.OK, MessageBoxIcon.Information);
                DialogResult = DialogResult.OK;
                Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }