我遇到了一个特殊的问题。基本上我正在为从服务器读取数据的现有异步类编写一个包装器。库中的原始方法是这样的
public async Task<IEnumerable<PersonData>> GetPersonData();
它与此出色地工作
var people = await GetPersonData();
但是,当我尝试包装它时遇到了问题。为了简单起见,我已经包含了我尝试测试它的初始版本,但它不起作用,此外,我的实际包装方法给出了一个特殊的“无法等待”错误,它并没有表明它的实际原因做不到。这是一个编译器错误,所以我一定做错了什么。
public async Task<IEnumerable<PersonData>> GetWrappedPersonData()
{
return await clientClass.GetPersonData();
}
然后当我在我的主课上调用它时
var wrappedPeople = await wrapper.GetWrappedPersonData();
我收到“等待”错误,指出“无法等待'System.Threading.Tasks.Task<System.Collections.Generic.IEnumerable<PersonData>>'
当我将鼠标悬停在 GetWrappedPersonData 上时,它表示该方法是可等待的。我很困惑为什么我不能在这里等待。