我已经学会了在我的存储库中延迟加载属性。现在我想这样做,但我还需要从网页加载一些东西(使用 Httpclient),这意味着我的属性将是异步的。
public async Task<List<NewsModel>> News
{
get
{
if (_news == null)
{
CacheProvider cache = new CacheProvider();
object cachedNews = cache.Get("news");
if (cachedNews == null)
{
var client = new HttpClient();
// await HttpResponse
}
}
return _news;
}
set
{
_news = value;
}
}
但是,视觉工作室告诉我
“修饰符异步对此项目无效”
同时突出显示第一行中的“新闻”一词。
是否有可能做到这一点?还是我必须编写一个单独的方法?