private void AddCarButton_Click(object sender, RoutedEventArgs e) { if (cbAddManuf.Text == "" || cbAddMark.Text == "" || addCarModel.Text == "" || addCarPower.Text == "" || addCarAcceleration.Text == "" || addCarConsumption.Text == "" || addCarSpeed.Text == "" || addCarPrice.Text == "") { MessageBox.Show("Заполните все поля!"); } else { Manufacturer manufacturer = new Manufacturer { Name = cbAddManuf.Text }; Mark mark = new Mark { Name = cbAddMark.Text, Manufacturer = manufacturer }; using (AutoStorageContext db = new AutoStorageContext()) { if (db.Manufacturers.Any(m => m.Name == cbAddManuf.Text)) { manufacturer = db.Manufacturers.First(m => m.Name == cbAddManuf.Text); } else { db.Manufacturers.Add(manufacturer); } db.SaveChanges(); if (db.Marks.Any(m => m.Name == cbAddMark.Text)) { mark = db.Marks.First(m => m.Name == cbAddMark.Text); } else { db.Marks.Add(mark); } db.SaveChanges(); Car car = new Car { Model = addCarModel.Text, Power = int.Parse(addCarPower.Text), Acceleration = double.Parse(addCarAcceleration.Text), Consumption = double.Parse(addCarConsumption.Text), MaxSpeed = int.Parse(addCarSpeed.Text), Price = int.Parse(addCarPrice.Text), Manufacturer = manufacturer, Mark = mark }; db.Cars.Add(car); db.SaveChanges(); } this.Close(); } }
private void cbAddManuf_SelectionChanged(object sender, SelectionChangedEventArgs e) { Manufacturer manufacturer = cbAddManuf.SelectedItem as Manufacturer; using (AutoStorageContext db = new AutoStorageContext()) { db.Manufacturers.Load(); db.Marks.Load(); cbAddMark.ItemsSource = db.Marks.Local.Select(m => m).Where(m => m.ManufacturerId == manufacturer.Id); } }
public void ViewTable() { using (AutoStorageContext db = new AutoStorageContext()) { db.Manufacturers.Load(); cbManufacturer.ItemsSource = db.Manufacturers.ToList(); db.Marks.Load(); cbMark.ItemsSource = db.Marks.ToList(); db.Cars.Load(); carsGrid.ItemsSource = db.Cars.Local.ToBindingList(); } }
private void deleteButton_Click(object sender, RoutedEventArgs e) { Car car = carsGrid.SelectedItem as Car; using (AutoStorageContext db = new AutoStorageContext()) { car = db.Cars.Find(car.Id); if (car != null) { db.Cars.Remove(car); } db.SaveChanges(); } ViewTable(); }
public AddEditCarWindow() { InitializeComponent(); using (AutoStorageContext db = new AutoStorageContext()) { db.Manufacturers.Load(); cbAddManuf.ItemsSource = db.Manufacturers.Local.Select(m => m).Where(m => m.Id != 1); db.Marks.Load(); cbAddMark.ItemsSource = db.Marks.Local.Select(m => m).Where(m => m.Id != 1); } Title = "Добавление нового автомобиля"; addEditCarButton.Content = "Добавить"; Show(); addEditCarButton.Click += AddCarButton_Click; }
private void cbManufacturer_SelectionChanged(object sender, SelectionChangedEventArgs e) { Manufacturer manufacturer = cbManufacturer.SelectedItem as Manufacturer; using (AutoStorageContext db = new AutoStorageContext()) { if (cbManufacturer.SelectedIndex > 0) { db.Manufacturers.Load(); db.Marks.Load(); cbMark.ItemsSource = db.Marks.Local.Select(m => m).Where(m => m.ManufacturerId == 1 || m.ManufacturerId == manufacturer.Id); db.Cars.Load(); carsGrid.ItemsSource = db.Cars.Local.Select(c => c).Where(c => c.ManufacturerId == manufacturer.Id); } else { ViewTable(); } } }
private void cbMark_SelectionChanged(object sender, SelectionChangedEventArgs e) { Mark mark = cbMark.SelectedItem as Mark; using (AutoStorageContext db = new AutoStorageContext()) { if (cbMark.SelectedIndex > 0) { db.Manufacturers.Load(); db.Marks.Load(); db.Cars.Load(); carsGrid.ItemsSource = db.Cars.Local.Select(c => c).Where(c => c.MarkId == mark.Id); } else { db.Manufacturers.Load(); db.Marks.Load(); db.Cars.Load(); carsGrid.ItemsSource = db.Cars.Local.Select(c => c).Where(c => c.Manufacturer.Name == cbManufacturer.Text); } } }
private void EditCarButton_Click(object sender, RoutedEventArgs e) { if (cbAddManuf.Text == "" || cbAddMark.Text == "" || addCarModel.Text == "" || addCarPower.Text == "" || addCarAcceleration.Text == "" || addCarConsumption.Text == "" || addCarSpeed.Text == "" || addCarPrice.Text == "") { MessageBox.Show("Заполните все поля!"); } else { using (AutoStorageContext db = new AutoStorageContext()) { Car car = db.Cars.Find(_car.Id); car.Model = addCarModel.Text; car.Power = int.Parse(addCarPower.Text); car.Acceleration = double.Parse(addCarAcceleration.Text); car.Consumption = double.Parse(addCarConsumption.Text); car.MaxSpeed = int.Parse(addCarSpeed.Text); car.Price = int.Parse(addCarPrice.Text); db.SaveChanges(); } this.Close(); } }