/// <summary> /// 是否存在于下载列表中 /// </summary> /// <param name="downloading"></param> /// <returns></returns> private async Task <bool> IsExist(DownloadingItem downloading) { bool isExist = downloadingList.Contains(downloading); if (isExist) { return(true); } else { // 先恢复为waiting状态,暂停状态下Remove会导致文件重新下载,原因暂不清楚 await AriaClient.UnpauseAsync(downloading.Downloading.Gid); // 移除下载项 var ariaRemove = await AriaClient.RemoveAsync(downloading.Downloading.Gid); if (ariaRemove == null || ariaRemove.Result == downloading.Downloading.Gid) { // 从内存中删除下载项 await AriaClient.RemoveDownloadResultAsync(downloading.Downloading.Gid); } return(false); } }