static void Main(string[] args) { //using (var db = new SongsDB()) //{ // if (!db.Songs.Any()) // { // var songs = new Song[100]; // for (var i = 0; i < songs.Length;i++) // songs[i] = new Song // { // Name=$"Песня{i+1}", // Artist = new Artist { Name=$"Исполнитель {i}"} // }; // db.Songs.AddRange(songs); // db.SaveChanges(); // } //} //using (var db = new SongsDB()) //{ // db.Database.Log = str => Console.WriteLine(str); // Указыаем контексту БД куда писать лог // var song = db.Songs.FirstOrDefault(s => s.Artist.Name == "Исполнитель 8"); // if (song != null) // db.Songs.Remove(song); // db.SaveChanges(); //} //using (var db = new SongsDB()) //{ // foreach (var song in db.Songs.ToArray()) // { // Console.WriteLine("Song {0} - artist {1}", song.Name, song.Artist.Name); // } //} using (var db = new SongsDB()) { Console.WriteLine("Songs count - {0}", db.Songs.Count()); } Console.ReadLine(); }
protected override void Seed(SongsDB db) { if (!db.Songs.Any()) { var songs = new Song[100]; for (var i = 0; i < songs.Length; i++) { songs[i] = new Song { Name = $"ѕесн¤ {i + 1}", Artist = new Artist { Name = $"»сполнитель {i}" } } } ; db.Songs.AddRange(songs); db.SaveChanges(); } } }
public MMTrack(SongsDB.SDBSongData s) { songRef = s; }
static void Main(string[] args) { using (var db = new SongsDB()) { //db.Configuration.AutoDetectChangesEnabled = false; db.Database.Log = msg => Console.WriteLine("EF: {0}\r\n-----------------", msg); var badArtists = db.Artists .Where(a => a.Name.EndsWith("2")) .Include(a => a.Tracks);// .Include(a => a.Tracks) - требование о загрузке данных из связанной таблицы foreach (var badArtist in badArtists) { badArtist.Name = $"{badArtist.Name} - Bad"; for (var i = 0; i < 10; i++) { badArtist.Tracks.Add(new Track { Name = $"Bad track {i + 1} from badArtist.Name" }); } } Console.ReadLine(); Console.Clear(); //db.ChangeTracker.DetectChanges(); db.SaveChanges(); } Console.ReadLine(); using (var db = new SongsDB()) { //db.Database.Log = msg => Console.WriteLine("EF: {0}\r\n-----------------", msg); var tracksCount = db.Tracks.Count(); Console.WriteLine("В базе данных содержится {0} песен", tracksCount); var longTracks = db.Tracks.Where(track => track.Length > 500); foreach (var info in longTracks .Select(t => new { ArtistName = t.Artist.Name, t.Artist.Birthday })) { Console.WriteLine("Artist:{0}, date:{1}", info.ArtistName, info.Birthday); } //db.Database.ExecuteSqlCommand() } //Console.WriteLine(); //Console.ReadLine(); //Console.Clear(); //using (var db = new SongsDB()) //{ // db.Database.Log = msg => Console.WriteLine("EF: {0}\r\n-----------------", msg); // for (var i = 1; i <= 3; i++) // { // var artist = new Artist // { // Name = $"Artist name {i}", // Birthday = DateTime.Now.Subtract(TimeSpan.FromDays(365 * (i + 20))), // Tracks = new List<Track>() // }; // for (var j = 1; j < 3; j++) // { // var track = new Track // { // Name = $"Track {i + j}", // Length = j * 456 // }; // artist.Tracks.Add(track); // } // db.Artists.Add(artist); // } // db.SaveChanges(); //} Console.ReadLine(); }