private void Add_Click(object sender, EventArgs e)
        {
            using (ArtistContext db = new ArtistContext())
              {
            ArtistData ArtForm = new ArtistData();

            //формируется список альбомов
            List<Album> albums = db.Albums.ToList();

            DialogResult result = ArtForm.ShowDialog(this);

            if (result == DialogResult.Cancel)
              return;

            Artist artist = new Artist();
            artist.Name = ArtForm.textBox1.Text;
            artist.Country = ArtForm.comboBox1.SelectedItem.ToString();
            artist.BirthDate = ArtForm.dateTimePicker1.Value.Date;

            db.Artists.Add(artist);
            db.SaveChanges();

            db.Artists.Load();
            dataGridView1.DataSource = db.Artists.Local.ToBindingList();

            MessageBox.Show("Новый объект добавлен");
              }
        }
        public TrackForm()
        {
            InitializeComponent();

              db = new ArtistContext();
              db.Tracks.Load();
              dataGridView1.DataSource = db.Tracks.Local.ToBindingList();
        }
        public ArtistForm()
        {
            InitializeComponent();

              using (ArtistContext db = new ArtistContext())
              {
            db.Artists.Load();
            dataGridView1.DataSource = db.Artists.Local.ToBindingList();
              }
        }
        private void Albums_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count > 0)
              {
            int index = dataGridView1.SelectedRows[0].Index;
            int id = 0;
            bool converted = Int32.TryParse(dataGridView1[0, index].Value.ToString(), out id);
            if (converted == false)
              return;

            using (ArtistContext db = new ArtistContext())
            {
              Artist artist = db.Artists.Find(id);
              listBox1.DataSource = artist.Albums.ToList();
              listBox1.DisplayMember = "Name";
            }
              }
        }
        private void Add_Click(object sender, EventArgs e)
        {
            AlbumData albumdata = new AlbumData();

              // формируем список исполнителей
              List<Artist> artists = db.Artists.ToList();
              albumdata.comboBox1.DataSource = artists;
              albumdata.comboBox1.ValueMember = "Id";
              albumdata.comboBox1.DisplayMember = "Name";

              // формируем список жанров
              List<Genre> genres = db.Genres.ToList();
              albumdata.comboBox2.DataSource = genres;
              albumdata.comboBox2.ValueMember = "Id";
              albumdata.comboBox2.DisplayMember = "Name";

              DialogResult result = albumdata.ShowDialog(this);

              if (result == DialogResult.Cancel)
            return;

              Album album = new Album();
              album.Name = albumdata.textBox2.Text;
              album.Year = albumdata.dateTimePicker1.Value.Date;
              album.Artist = (Artist)albumdata.comboBox1.SelectedItem;
              album.Genre = (Genre)albumdata.comboBox2.SelectedItem;

              db.Albums.Add(album);
              db.SaveChanges();

              db.Dispose();
              db = new ArtistContext();
              db.Albums.Load();
              dataGridView1.DataSource = db.Albums.Local.ToBindingList();

              MessageBox.Show("Новый альбом добавлен");
        }
Beispiel #6
0
 public Search()
 {
     InitializeComponent();
       db = new ArtistContext();
 }
        private void Change_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count > 0)
              {
            int index = dataGridView1.SelectedRows[0].Index;
            int id = 0;
            bool converted = Int32.TryParse(dataGridView1[0, index].Value.ToString(), out id);
            if (converted == false)
              return;

            using (ArtistContext db = new ArtistContext())
            {
              Artist artist = db.Artists.Find(id);

              if (artist.Locked)
              {
            MessageBox.Show("Объект редактируется другим пользователем!");
            return;
              }
              //блокирую и отправляю запрос на лок
              artist.Locked = true;
              db.Entry(artist).State = EntityState.Modified;
              db.SaveChanges();

              ArtistData artistdata = new ArtistData();

              artistdata.comboBox1.SelectedItem = artist.Country;
              artistdata.textBox1.Text = artist.Name;
              artistdata.dateTimePicker1.Value = artist.BirthDate;

              DialogResult result = artistdata.ShowDialog(this);

              if (result == DialogResult.Cancel)
              {
            artist.Locked = false;
            db.Entry(artist).State = EntityState.Modified;
            db.SaveChanges();
            db.Artists.Load();
            dataGridView1.DataSource = db.Artists.Local.ToBindingList();
            return;
              }

              artist.Name = artistdata.textBox1.Text;
              artist.Country = artistdata.comboBox1.SelectedItem.ToString();
              artist.BirthDate = artistdata.dateTimePicker1.Value.Date;
              artist.Locked = false;

              db.Entry(artist).State = EntityState.Modified;
              db.SaveChanges();

              db.Artists.Load();
              dataGridView1.DataSource = db.Artists.Local.ToBindingList();
              dataGridView1.Refresh(); // обновляем грид
              MessageBox.Show("Объект обновлен");
            }

              }
        }
 private void Refresh_Click(object sender, EventArgs e)
 {
     using (ArtistContext db = new ArtistContext())
       {
     db.Artists.Load();
     dataGridView1.DataSource = db.Artists.Local.ToBindingList();
     MessageBox.Show("Данные обновлены");
       }
 }
        private void Delete_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count > 0)
              {
            int index = dataGridView1.SelectedRows[0].Index;
            int id = 0;
            bool converted = Int32.TryParse(dataGridView1[0, index].Value.ToString(), out id);
            if (converted == false)
              return;

            using (ArtistContext db = new ArtistContext())
            {
              Artist artist = db.Artists.Find(id);

              if (artist.Locked)
              {
            MessageBox.Show("Объект редактируется другим пользователем!");
            return;
              }

              artist.Albums.Clear();
              db.Artists.Remove(artist);
              db.SaveChanges();

              db.Artists.Load();
              dataGridView1.DataSource = db.Artists.Local.ToBindingList();

              MessageBox.Show("Объект удален");
            }
              }
        }
        private void Change_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count > 0)
              {
            int index = dataGridView1.SelectedRows[0].Index;
            int id = 0;
            bool converted = Int32.TryParse(dataGridView1[0, index].Value.ToString(), out id);
            if (converted == false)
              return;

            db.Dispose();
            db = new ArtistContext();

            db.Albums.Load();
            Album album = db.Albums.Find(id);

            if (album.Locked)
            {
              MessageBox.Show("Объект редактируется другим пользователем!");
              return;
            }
            //блокирую и отправляю запрос на лок
            album.Locked = true;
            db.Entry(album).State = EntityState.Modified;
            db.SaveChanges();

            AlbumData albumdata = new AlbumData();
            albumdata.textBox2.Text = album.Name;
            albumdata.dateTimePicker1.Value = album.Year;

            // формируем список жанров
            List<Genre> genres = db.Genres.ToList();
            albumdata.comboBox2.DataSource = genres;
            albumdata.comboBox2.ValueMember = "Id";
            albumdata.comboBox2.DisplayMember = "Name";

            // формируем список исполнителей
            List<Artist> artists = db.Artists.ToList();
            albumdata.comboBox1.DataSource = artists;
            albumdata.comboBox1.ValueMember = "Id";
            albumdata.comboBox1.DisplayMember = "Name";

            if (album.Genre != null)
              albumdata.comboBox2.SelectedValue = album.Genre.Id;

            if (album.Artist != null)
              albumdata.comboBox1.SelectedValue = album.Artist.Id;

            DialogResult result = albumdata.ShowDialog(this);

            if (result == DialogResult.Cancel)
            {
              album.Locked = false;
              db.Entry(album).State = EntityState.Modified;
              db.SaveChanges();

              db.Albums.Load();
              dataGridView1.DataSource = db.Albums.Local.ToBindingList();
              return;
            }

            album.Name = albumdata.textBox2.Text;
            album.Year = albumdata.dateTimePicker1.Value.Date;
            album.Artist = (Artist)albumdata.comboBox1.SelectedItem;
            album.Genre = (Genre)albumdata.comboBox2.SelectedItem;
            album.Locked = false;

            db.Entry(album).State = EntityState.Modified;
            db.SaveChanges();

            db.Dispose();
            db = new ArtistContext();
            db.Albums.Load();
            dataGridView1.DataSource = db.Albums.Local.ToBindingList();

            MessageBox.Show("Объект обновлен");
              }
        }