@page "/Query"
@page "/query/{handle?}"
@inject IDIS_Service service
@inject IDIS_TemplateService templateService
@inject ISnackbar snackbar
解析标识
@currentMessage
@if (queryData.Value is{ Length: >0 })
{
@for (var index = 0; index < queryData.Value.Length; index++)
{
var x = queryData.Value[index];
var templateItem = template.Items[index];
@templateItem.Name
@if (x.Data.Value.Contains("data:image"))
{
}
else
{
@x.Data.Value
}
}
}
@code {
[Parameter]
public string handle { get; set; }
private IDIS_Query_Data queryData { get; set; }= new IDIS_Query_Data();
private IDIS_Template template { get; set; } = new IDIS_Template();
private string currentMessage { get; set; } = "从解析一个标识开始";
private Severity severity { get; set; } = Severity.Normal;
protected override void OnAfterRender(bool firstRender)
{
if (!firstRender) return;
if (string.IsNullOrEmpty(handle) is false)
{
QueryInternal();
}
}
private async void QueryInternal()
{
try
{
currentMessage = "正在查询";
severity = Severity.Info;
queryData = await service.QueryAsync(handle);
template = await templateService.QueryAsync(queryData.Prefix,queryData.TemplateVersion);
currentMessage = "查询成功";
severity = Severity.Success;
}
catch (Exception e)
{
currentMessage = e.Message;
severity = Severity.Error;
}
await InvokeAsync(StateHasChanged);
}
}