c# - 具有异步服务的 ASP.NET Razor 组件
问题描述
我对 ASP.NET 还是很陌生(或者更确切地说,像几年前一样更新)。我现在创建了一个服务来从Google Firestore
. 这是从云端加载数据的方法
public async Task<IEnumerable<MyDocument>> GetTempDocs()
{
var qs = await db.Collection("temp").GetSnapshotAsync();
return qs.Documents.Select(x => new MyDocument() { Data = x.ToDictionary(), Id = x.Id });
}
非常简单和有效。但是现在,为了可视化我创建的数据Razor Component
@using Microsoft.AspNetCore.Components.Web;
@using MyProject.Models;
@using MyProject.Services;
@inject FireStoreService firestoreService;
<div class="card-columns">
@foreach (var document in firestoreService.GetTempDocs())
{
<div class="card">
<div class="card-body">
<h5 class="card-title">@document.Data["title"]</h5>
</div>
</div>
<div class="card-footer">
<button @onclick="(_e => firestoreService.SomeOtherFunction(document))" class="btn btn-success">SomeText</button>
</div>
}
</div>
现在的问题是,GetTempDocs()
是asynchronous
。那么我该如何等待结果,我应该在哪里等待呢?我在另一个页面上读到等待是后端责任,但调用它是在前端(即客户端)完成的。
onclick()
不相关的问题: a 中的 html 按钮中的方法Model Page
(如 default Index.cshtml
)和@onclick
a中的方法有什么区别Razor Component
。
解决方案
推荐阅读
- python - UnicodeDecodeError:“charmap”编解码器无法解码位置 28 中的字节 0x81:字符映射到
- python - pytest 只能在控制台级别运行?
- r - 已解决- lmer:qr.default 中的错误(X,tol = tol,LAPACK = FALSE):外部函数中的 NA/NaN/Inf(参数 1)
- javascript - 如何在 React JS 中使用 map 方法在按钮 onclick 上调用数组数据
- python - 传递带有双索引的for循环-python-dataframe
- reactjs - 如何在客户端商店的嵌入式 React 应用程序中跟踪应用程序交互
- python - Django Q过滤器,无法在单个查询中获得结果
- simpletransformers - 很想获得 T5 变形金刚的顶级生成文本?
- c++ - WFP Windows 过滤平台
- java - Java 数学计算无法正常工作