public async static Task <IList <TrackViewModel> > ResolveTrackViewModelsAsync(this IContainerProvider container, IList <Track> tracks) { IList <TrackViewModel> trackViewModels = null; await Task.Run(() => { trackViewModels = tracks.Select(t => container.ResolveTrackViewModel(t)).ToList(); }); return(trackViewModels); }
public async Task <TrackViewModel> CreateTrackAsync(string path) { TrackViewModel returnTrack = null; try { Track track = await MetadataUtils.Path2TrackAsync(path); returnTrack = container.ResolveTrackViewModel(track); } catch (Exception ex) { // Make sure the file can be opened by creating a Track with some default values returnTrack = container.ResolveTrackViewModel(Track.CreateDefault(path)); LogClient.Error("Error while creating Track from file '{0}'. Creating default track. Exception: {1}", path, ex.Message); } return(returnTrack); }