@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); } }