【发布时间】:2020-09-28 00:10:12
【问题描述】:
我有一个 for 循环,它从我的数据模型中创建我的 html 表,该表从 SQL server express 获取数据。我想知道是否可以创建一个自动刷新方法,其中表数据只刷新而不是整个页面,如果没有,那么可能是 OnClick 按钮将从数据模型中检索最新数据并相应地更新表的方法。
我是 blazor 和 C# 的新手,因此我们将不胜感激,我当前的页面结构目前如下所示:
@page "/employees"
@using DataLib;
@inject IEmployeeData _db
@if (employees is null)
{
<p style="color:white;"><em>Loading . . .</em></p>
}
else
{
<table class="table" id="myTable">
<thead>
<tr>
<th>Entry Date</th>
<th>Employee</th>
</tr>
</thead>
<tbody>
@foreach (var employee in employees)
{
<tr>
<td>@employee.EntryDate</td>
<td>@employee.POI</td>
</tr>
}
</tbody>
</table>
}
@code{
private List<EmployeeModel> employees;
protected override async Task OnInitializedAsync()
{
employees = await _db.GetEmployee();
}
}
当我加载此页面和手动刷新时,上述操作非常完美。
你们有什么方法可以帮助我吗?
谢谢。
【问题讨论】:
-
如果按时刷新就足够了,您可以use a timer。该示例进行导航,但您可以只刷新数据而不是导航。如果您需要在数据库更新时立即刷新数据,那么这会更复杂但可能。
-
@Paedow 这个问题不是链接问题的重复。 Blazor 的工作方式与答案中建议的方式完全不同。请您重新打开此问题以便我正确回答吗?
-
@Paedow 请重新打开这个,您提出的答案与OP的问题完全无关。
-
对不起,我不知道它会立即关闭。我将其标记为可能的重复项,仅此而已。
标签: c# html blazor blazor-server-side