private static int SetRecord(MP3Record mp3Record) { int lastSongID = -1; if (MD5Exist(mp3Record.MD5, false) == false) { try { var context = new MyJukeboxEntities(); // tsongs data var songs = new tSong(); songs.Album = mp3Record.Album; songs.Artist = mp3Record.Artist; songs.Titel = mp3Record.Titel; songs.Pfad = mp3Record.Path; songs.FileName = mp3Record.FileName; songs.ID_Genre = mp3Record.Genre; songs.ID_Catalog = mp3Record.Catalog; songs.ID_Media = mp3Record.Media; context.tSongs.Add(songs); context.SaveChanges(); lastSongID = GetLastID("tSongs"); // tmd5 data var md5 = new tMD5(); md5.MD5 = mp3Record.MD5; md5.ID_Song = lastSongID; context.tMD5.Add(md5); context.SaveChanges(); // tfileinfo data var file = new tFileInfo(); file.FileDate = mp3Record.FileDate; file.FileSize = mp3Record.FileSize; file.ImportDate = DateTime.Now; file.ID_Song = lastSongID; context.tFileInfos.Add(file); context.SaveChanges(); // tinfos data var info = new tInfo(); info.Sampler = mp3Record.IsSample; info.ID_Song = lastSongID; context.tInfos.Add(info); context.SaveChanges(); return(1); } catch (Exception ex) { Debug.Print($"SetNewRecord_Error: {ex.Message}"); return(0); } } else { return(0); } }
public static int CreateCatalog(string catalog) { int idDbo = -1; int idTst = -1; var context = new MyJukeboxEntities(); #region create new catalog on [dbo] var catalogDboExist = context.tCatalogs .Where(c => c.Name == catalog) .FirstOrDefault(); if (catalogDboExist == null) { context.tCatalogs .Add(new tCatalog { Name = catalog }); context.SaveChanges(); idDbo = GetLastID("tCatalogs"); } #endregion #region create new catalog on [tst] var catalogTstExist = context.tCatalogs .Where(c => c.Name == catalog) .FirstOrDefault(); if (catalogTstExist == null) { context.tCatalogs .Add(new tCatalog { Name = catalog }); context.SaveChanges(); idTst = GetLastID("tCatalogs"); } #endregion if (idDbo == idTst) { return(idDbo); } else { return(-1); } }
public static async Task RefillMD5Table() { List <tMD5> rec = new List <tMD5>(); using (var context = new MyJukeboxEntities()) { await Task.Run(() => { var result = context.tSongs .OrderBy(s => s.ID) .Select(s => new { s.ID, s.Pfad, s.FileName }); foreach (var s in result) { string hash = Common.MD5($"{s.Pfad}{s.FileName}"); Debug.Print($"ID_Song={s.ID}, md5={hash}"); rec.Add(new tMD5 { ID_Song = s.ID, MD5 = hash }); } context.tMD5.AddRange(rec); context.SaveChanges(); }); } }
public static Exception RemoveSongFromPlaylist(int idSong, int idPlaylist) { try { var context = new MyJukeboxEntities(); var playlist = context.tPlaylists .Where(p => p.ID == idPlaylist) .FirstOrDefault(); if (playlist == null) { throw new Exception($"Playlist {idPlaylist} not found!"); } var entry = context.tPLentries .Where(p => p.PLID == idPlaylist && p.SongID == idSong) .FirstOrDefault(); if (entry == null) { throw new Exception($"Song not exist in the Playlist '{playlist.Name}'"); } context.tPLentries.Remove(entry); context.SaveChanges(); return(new Exception(null)); } catch (Exception ex) { return(ex); } }
public async Task RefillMD5Table() { List <tMD5> rec = new List <tMD5>(); using (var context = new MyJukeboxEntities()) { await Task.Run(() => { var result = context.tSongs .OrderBy(s => s.ID) .Select(s => new { s.ID, s.Pfad, s.FileName }); foreach (var s in result) { string hash = Helpers.MD5($"{s.Pfad}\\{s.FileName}"); Console.WriteLine($"ID_Song={s.ID}, md5={hash}"); rec.Add(new tMD5 { ID_Song = s.ID, MD5 = hash } ); } context.tMD5.AddRange(rec); context.SaveChanges(); Console.WriteLine($"{rec} records added."); }); } }
public static bool EditSaveFileinfoChanges(int id, MP3Record record) { try { var context = new MyJukeboxEntities(); var file = context.tFileInfoes.Find(id); if (file.FileSize != record.FileSize) { file.FileSize = record.FileSize; } if (file.FileDate != record.FileDate) { file.FileDate = record.FileDate; } if (file.Duration != record.Duration) { file.Duration = record.Duration; } context.SaveChanges(); return(true); } catch (Exception ex) { return(false); } }
public static void DeleteSong(int id) { var context = new MyJukeboxEntities(); var songs = context.tSongs.First(s => s.ID == id); context.tSongs.Remove(songs); context.SaveChanges(); }
internal static int AddNewPlaylist(string playlistname) { var context = new MyJukeboxEntities(); tPlaylist playlist = new tPlaylist { Name = playlistname, Last = false }; context.tPlaylists.Add(playlist); context.SaveChanges(); return(playlist.ID); }
public static void SetRating(int id, int rating) { var context = new MyJukeboxEntities(); var result = context.tInfos.SingleOrDefault(s => s.ID_Song == id); if (result != null) { result.Rating = rating; context.SaveChanges(); } ; }
public static void SaveParameters(List <Setting> settings) { var context = new MyJukeboxEntities(); foreach (Setting setting in settings) { var result = context.tSettings.SingleOrDefault(p => p.Name == setting.Name); result.Value = setting.Value; } context.SaveChanges(); }
public static void Save() { var context = new MyJukeboxEntities(); foreach (KeyValuePair <string, object> item in Settings) { var update = context.tSettings.SingleOrDefault(n => n.Name == item.Key); update.Value = item.Value.ToString(); } context.SaveChanges(); var result = DataGetSet.TruncateTableQueries(); foreach (string query in QueryList) { context.tQueries.Add(new tQuery { Query = query }); } context.SaveChanges(); }
public static void AddSongToPlaylist(int id, int playlistID) { var context = new MyJukeboxEntities(); var entry = new tPLentries() { PLID = playlistID, SongID = id, Pos = 1 }; context.tPLentries.Add(entry); context.SaveChanges(); }
internal static bool RenamePlaylist(int id, string newPlaylistName) { try { var context = new MyJukeboxEntities(); var playlist = context.tPlaylists.SingleOrDefault(i => i.ID == id); playlist.Name = newPlaylistName; context.SaveChanges(); return(true); } catch { return(false); } }
public static bool EditSaveSongChanges(int id, MP3Record record) { try { var context = new MyJukeboxEntities(); var songs = context.tSongs.Find(id); if (songs.ID_Genre != GetGenreFromString(record.Genre)) { songs.ID_Genre = GetGenreFromString(record.Genre); } if (songs.ID_Catalog != GetCatalogFromString(record.Catalog)) { songs.ID_Catalog = GetCatalogFromString(record.Catalog); } if (songs.Album != record.Album) { songs.Album = record.Album; } if (songs.Artist != record.Artist) { songs.Artist = record.Artist; } if (songs.Titel != record.Titel) { songs.Titel = record.Titel; } if (songs.Pfad != record.Path) { songs.Pfad = record.Path; } if (songs.FileName != record.FileName) { songs.FileName = record.FileName; } context.SaveChanges(); return(true); } catch { return(false); } }
public static void SetColumnWidth(string name, int width) { var context = new MyJukeboxEntities(); var result = context.tColumns.SingleOrDefault(n => n.Name == name); if (result != null) { result.Width = width; } else { context.tColumns.Add(new tColumn { Name = name, Width = width }); } context.SaveChanges(); }
internal static void SetPlaylistLastSelected(int id) { var context = new MyJukeboxEntities(); int last = GetLastselectedPlaylist(); var result = context.tPlaylists.SingleOrDefault(n => n.ID == last); if (result != null) { result.Last = false; } result = context.tPlaylists.SingleOrDefault(n => n.ID == id); if (result != null) { result.Last = true; } context.SaveChanges(); }
//public static List<string> GetQueryList() //{ // List<string> queries = null; // var context = new MyJukeboxEntities(); // queries = context.tQueries // .Select(q => q.Query) // .OrderBy(q => q).ToList(); // return queries; //} public static void AddSongToPlaylist(int id, string playlistName) { var context = new MyJukeboxEntities(); var playlist = context.tPlaylists .Where(p => p.Name == playlistName) .Select(p => p.ID).ToList(); if (playlist == null) { throw new Exception("Wrong playlist!"); } var entry = new tPLentries() { PLID = playlist[0], SongID = id, Pos = 1 }; context.tPLentries.Add(entry); context.SaveChanges(); }
internal static bool RemovePlaylist(int id) { try { var context = new MyJukeboxEntities(); var playlistEntries = context.tPLentries .Where(i => i.PLID == id) .Select(i => i); context.tPLentries.RemoveRange(playlistEntries); var playlist = context.tPlaylists.SingleOrDefault(i => i.ID == id); context.tPlaylists.Remove(playlist); context.SaveChanges(); return(true); } catch { return(false); } }
internal static void SetPlaylistInfos(PlaylistInfo playlist) { var context = new MyJukeboxEntities(); var result = context.tPlaylists.SingleOrDefault(n => n.ID == playlist.ID); if (result != null) { if (playlist.Name != null) { result.Name = playlist.Name; } if (playlist.Row != null) { result.Row = playlist.Row; } if (playlist.Last != null) { result.Last = playlist.Last; } context.SaveChanges(); } }
public static int CreateGenre(string genre) { int id = -1; var context = new MyJukeboxEntities(); var result = context.tGenres .Where(g => g.Name == genre) .FirstOrDefault(); if (result == null) { context.tGenres .Add(new tGenre { Name = genre }); context.SaveChanges(); id = GetLastID("tGenres"); } return(id); }