public async Task LoadFromDoubanAsync() { var doubanId = this.DoubanId; if (string.IsNullOrWhiteSpace(doubanId)) { return; } var info = await DoubanHelper.TryGetArtistInfoAsync(doubanId); if (info == null) { return; } var names = DoubanHelper.ParseName(info).ToArray(); if (names.Length > 0) { for (var i = 0; i < names.Length; i++) { var n = names[i]; names[i] = n .Replace(", ", ",") .Replace(" ,", ",") .Replace(",", " , ") .Replace("(蠻各)", "") .Replace("(云兆)", ""); } this.Names.AddRange(names); } }
/// <summary> /// return true if success. /// </summary> /// <param name="dataCenter"></param> /// <param name="source"></param> /// <returns></returns> public async Task <bool> GenerateAsync(DataCenter dataCenter, ICoverParent source) { var item = (Artist)source; var doubanId = item.DoubanId; if (string.IsNullOrWhiteSpace(doubanId)) { return(false); } var info = await DoubanHelper.TryGetArtistInfoAsync(doubanId); if (info == null) { return(false); } var url = info.GetLargeImageUrl(); var coverBuilder = CoverBuilder.CreateArtist(item); coverBuilder.Uri.Add(url); return(await dataCenter.CoverManager.BuildCoverAsync(coverBuilder)); }
private async Task <string> TryGetCoverUrlFromDoubanIdAsync(JryCoverType type, string doubanId) { DoubanEntity json = null; switch (type) { case JryCoverType.Video: json = await DoubanHelper.TryGetMovieInfoAsync(doubanId); break; case JryCoverType.Artist: json = await DoubanHelper.TryGetArtistInfoAsync(doubanId); break; default: throw new ArgumentOutOfRangeException("type", type, null); } return(json != null?json.GetLargeImageUrl() : null); }