using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Data; using System.Linq; using System.Windows; namespace eCompanies { /// /// Логика взаимодействия для App.xaml /// public partial class App : Application { public static ObservableCollection getCompanies() { using (var db = new CompaniesDBContext()) return new ObservableCollection(db.Company.AsEnumerable()); } public static HashSet getUsers(int id) { using (var db = new CompaniesDBContext()) return new HashSet(db.Users.Where(b => b.CompanyId.Equals(id))); } public static void addCompany(Company c) { using (var db = new CompaniesDBContext()) { c.CompanyId = 0; db.Company.Add(c); db.SaveChanges(); } } public static void updateCompany(Company c) { using (var db = new CompaniesDBContext()) { db.Company.Update(c); db.SaveChanges(); } } public static void removeCompany(int id) { using (var db = new CompaniesDBContext()) { var x = db.Company.Where(i => i.CompanyId.Equals(id)); foreach (Company c in x) db.Company.Remove(c); db.SaveChanges(); } } public static void removeUser(int id) { using (var db = new CompaniesDBContext()) { var x = db.Users.Where(i => i.UserId.Equals(id)); foreach (Users u in x) db.Users.Remove(u); db.SaveChanges(); } } public static MessageBoxResult saveResultsMsgBox() { return MessageBox.Show("Вы закрываете окно с компаниями. Хотите сохранить результаты?", "Сохранение изменений", MessageBoxButton.YesNoCancel); } public static MessageBoxResult fieldHasNotFilled() { return MessageBox.Show("Вы не заполнили поле [Название компании]! " + "Вернуться к форме для исправления? (При ответе Нет все данные будут потеряны!)", "Поле [Название компании] не может быть пустым!", MessageBoxButton.YesNo); } } }