public override List <string> GetUserDataKeys() { var list = base.GetUserDataKeys(); if (ConfigurationManager.Configuration.EnableStandaloneMusicKeys) { var songKey = IndexNumber.HasValue ? IndexNumber.Value.ToString("0000") : string.Empty; if (ParentIndexNumber.HasValue) { songKey = ParentIndexNumber.Value.ToString("0000") + "-" + songKey; } songKey += Name; if (!string.IsNullOrWhiteSpace(Album)) { songKey = Album + "-" + songKey; } var albumArtist = AlbumArtists.FirstOrDefault(); if (!string.IsNullOrWhiteSpace(albumArtist)) { songKey = albumArtist + "-" + songKey; } list.Insert(0, songKey); } else { var parent = AlbumEntity; if (parent != null && IndexNumber.HasValue) { list.InsertRange(0, parent.GetUserDataKeys().Select(i => { var songKey = (ParentIndexNumber != null ? ParentIndexNumber.Value.ToString("0000 - ") : "") + IndexNumber.Value.ToString("0000 - "); return(i + songKey); })); } } return(list); }
/// <summary> /// Gets the user data key. /// </summary> /// <returns>System.String.</returns> protected override string CreateUserDataKey() { if (ConfigurationManager.Configuration.EnableStandaloneMusicKeys) { var songKey = IndexNumber.HasValue ? IndexNumber.Value.ToString("0000") : string.Empty; if (ParentIndexNumber.HasValue) { songKey = ParentIndexNumber.Value.ToString("0000") + "-" + songKey; } songKey += Name; if (!string.IsNullOrWhiteSpace(Album)) { songKey = Album + "-" + songKey; } var albumArtist = AlbumArtists.FirstOrDefault(); if (!string.IsNullOrWhiteSpace(albumArtist)) { songKey = albumArtist + "-" + songKey; } return(songKey); } var parent = AlbumEntity; if (parent != null) { var parentKey = parent.GetUserDataKey(); if (IndexNumber.HasValue) { var songKey = (ParentIndexNumber != null ? ParentIndexNumber.Value.ToString("0000 - ") : "") + IndexNumber.Value.ToString("0000 - "); return(parentKey + songKey); } } return(base.CreateUserDataKey()); }