/// <summary> /// добавление экземпляра класса Person в бд /// </summary> /// <param name="person"></param> public void AddPerson(Person person) { using (var connection = new MySqlConnection(ConnectionString)) { using (var contextDb = new PersonDbContext(connection, false)) { contextDb.Database.CreateIfNotExists(); } connection.Open(); var transaction = connection.BeginTransaction(); try { using (var context = new PersonDbContext(connection, false)) { context.Database.UseTransaction(transaction); context.People.Add(person); SaveChanges(context); } transaction.Commit(); } catch { transaction.Rollback(); throw; } } }
/// <summary> /// Получает всех обьектов класса Person из бд /// </summary> /// <returns>people</returns> public IEnumerable <Person> GetPeopleList() { using (var connection = new MySqlConnection(ConnectionString)) { try { using (var contextDb = new PersonDbContext(connection, false)) { contextDb.Database.CreateIfNotExists(); } } catch (Exception e) { MessageBox.Show("Ошибка в подключении базы данных!\nВозможно вы забыли запустить процесс MySql"); } connection.Open(); var transaction = connection.BeginTransaction(); IEnumerable <Person> people; try { using (var context = new PersonDbContext(connection, false)) { context.Database.UseTransaction(transaction); people = context.People.ToArray(); } transaction.Commit(); } catch { transaction.Rollback(); throw; } return(people); } }
/// <summary> /// удаляет экземпляр класса Person из бд /// </summary> /// <param name="person"></param> public void DeletePerson(Person person) { try { using (var connection = new MySqlConnection(ConnectionString)) { using (var contextDb = new PersonDbContext(connection, false)) { contextDb.Database.CreateIfNotExists(); } connection.Open(); var transaction = connection.BeginTransaction(); try { using (var context = new PersonDbContext(connection, false)) { context.Database.UseTransaction(transaction); context.Entry(person).State = EntityState.Deleted; SaveChanges(context); } transaction.Commit(); } catch { transaction.Rollback(); throw; } } } catch (Exception e) { MessageBox.Show("asdas"); } }