1
0

44 lines
1.1 KiB
Plaintext

@inject NavigationManager NavigationManager
@if (this.servers != null && this.servers.Count > 0)
{
<ul>
<Virtualize Items="this.servers" Context="server">
<li @key="server.Id">
@server.Name in @server.City is
<span style="color:@(server.IsOnline ? "green" : "red")">
@(server.IsOnline ? "online" : "offline")
</span>;
&nbsp;
<a href="@($"/servers/{server.Id}")" class="btn btn-primary">Edit</a>
&nbsp;
<EditForm
Model="server"
FormName="@($"formDeleteServer{server.Id}")"
OnValidSubmit="@(() => { DeleteServer(server.Id); })">
<button type="submit" class="btn btn-danger">Delete</button>
</EditForm>
</li>
</Virtualize>
</ul>
}
@code {
[Parameter]
public string? CityName { get; set; }
private List<Server>? servers;
protected override void OnParametersSet()
{
servers = ServersRepository.GetServersByCity(CityName ?? "Eindhoven");
}
private void DeleteServer(int serverId)
{
if (serverId > 0)
{
ServersRepository.DeleteServer(serverId);
NavigationManager.Refresh(forceReload: true);
}
}
}