等待依赖项服务时发生C#TaskCompletionSource错误

等待依赖项服务时发生C#TaskCompletionSource错误,c#,xamarin.forms,taskcompletionsource,C#,Xamarin.forms,Taskcompletionsource,我正在尝试实现TaskCompletionSource,以在依赖项服务方法完成之前停止代码执行,但在尝试返回TaskCompletionSource结果时出错 public interface IImageFetcher<T, K> { Task<List<KeyValuePair<T, K>>> GetImageListItems(); } public Task<List<KeyValuePai

我正在尝试实现TaskCompletionSource,以在依赖项服务方法完成之前停止代码执行,但在尝试返回TaskCompletionSource结果时出错

 public interface IImageFetcher<T, K>
 {        
    Task<List<KeyValuePair<T, K>>> GetImageListItems();
 }  

 public Task<List<KeyValuePair<ImageListItem, IosImageModel>>> 
     GetImageListItems()
 {
      var tcs = new 
      TaskCompletionSource<List<KeyValuePair<ImageListItem, 
      IosImageModel>>>();
      .....
      return tcs.SetResult(items);
 }
公共接口IImageFetcher
{        
任务GetImageListItems();
}  
公共任务
GetImageListItems()
{
var tcs=新
TaskCompletionSource();
.....
返回tcs.SetResult(项目);
}
调用依赖项服务:

 List<KeyValuePair<ImageListItem, IosImageModel>> imageListItems = await DependencyService.Get<IImageFetcher<ImageListItem, IosImageModel>>().GetImageListItems();
List imageListItems=Wait DependencyService.Get().GetImageListItems();
返回行tcs.SetResult(items)给出一个错误:

Cannot implicitly convert type 'void' to 'System.Threading.Tasks.Task<System.Collections.Generic.List<System.Collections.Generic.KeyValuePair<Ferret.Models.ImageListItem, Ferret.Models.IosImageModel>>>
无法将类型“void”隐式转换为“System.Threading.Tasks.Task”

我正在努力了解此代码是如何导致该错误的。有些东西并不像看上去的那样,与依赖性服务几乎没有关系。更有可能的是,有一个GetImageListItems浮动,返回void。tcs.SetResult(items)的类型是什么?