private void buttonOk_Click(object sender, RoutedEventArgs e)
        {
            if (GenusNameEN.Text == "" || GenusNameRU.Text == "")
            {
                MessageBox.Show("Заполните форму", "ПРЕДУПРЕЖДЕНИЕ", MessageBoxButton.OK, MessageBoxImage.Information);
            }
            else
            {
                string strRU  = GenusNameRU.Text.ToLower();
                string strEN  = GenusNameEN.Text.ToLower();
                bool   RUisOK = true;
                bool   ENisOK = true;

                foreach (char b in strEN)
                {
                    if (b >= 'а' && b <= 'я')
                    {
                        MessageBox.Show("Поле \"ЛАТИНСКОЕ НАЗВАНИЕ\" должно содержать только литинские символы!!!", "ПРЕДУПРЕЖДЕНИЕ", MessageBoxButton.OK, MessageBoxImage.Information);
                        ENisOK = false;
                        break;
                    }
                }
                foreach (char a in strRU)
                {
                    if (a >= 'a' && a <= 'z')
                    {
                        MessageBox.Show("Поле \"РУССКОЕ НАЗВАНИЕ\" должно содержать только символы кириллицы!!!", "ПРЕДУПРЕЖДЕНИЕ", MessageBoxButton.OK, MessageBoxImage.Information);
                        RUisOK = false;
                        break;
                    }
                }
                if (RUisOK && ENisOK)
                {
                    try
                    {
                        var genusVM = new GenusViewModel();
                        genusVM.NameEN = GenusNameEN.Text;
                        genusVM.NameRU = GenusNameRU.Text;
                        var fam = (FamilyViewModel)FamilyName.SelectedItem;
                        fam.Genera.Add(genusVM);
                        familyService.AddGenusToFamily(fam.ID, genusVM);
                        fam.Genera.Add(genusVM);
                        Close();
                    }
                    catch (System.Data.Entity.Infrastructure.DbUpdateException)
                    {
                        MessageBox.Show("Проверьте \"ЛАТИНСКОЕ НАЗВАНИЕ\" и \"РУССКОЕ НАЗВАНИЕ\" возможно они уже присутствуют в базе данных!!!", "ПРЕДУПРЕЖДЕНИЕ", MessageBoxButton.OK, MessageBoxImage.Information);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.InnerException.Message, "ПРЕДУПРЕЖДЕНИЕ", MessageBoxButton.OK, MessageBoxImage.Information);
                    }
                }
            }
        }
        public void AddGenusToFamily(int familyId, GenusViewModel genus)
        {
            Mapper.Reset();
            var fam = dataBase.Families.Get(familyId);

            // конфигурирование AutoMapper. Отображение объекта GenusViewModel на объект Genus.
            // Тип слева - тип источника, а тип справа - тип назначения.
            Mapper.Initialize(cfg => cfg.CreateMap <GenusViewModel, Genus>());
            var gen = Mapper.Map <Genus>(genus);

            fam.Genera.Add(gen);
            dataBase.Save();
        }
 public void UpdateGenus(GenusViewModel genus)
 {
     throw new NotImplementedException();
 }