public override async Task Download() { try { var item = Info.Entity as SongViewModel; if (item == null) { throw new Exception("song item is null"); } if (string.IsNullOrEmpty(item.UrlLrc)) { item.UrlLrc = await NetAccess.GetUrlLrc(item.Id); } Info.Url = item.UrlLrc; if (string.IsNullOrEmpty(Info.Url)) { State = EnumDownloadState.Error; NotifyState(); return; } } catch (Exception e) { NotifyError(e); return; } await base.Download(); }