c# - 如何使用 Blazor 发出 http 请求?尝试但给我一个错误
问题描述
嘿伙计们,我有这个代码:
Treinos.json
{
"TREINOS_SEMANA": {
"Registros": 6,
"DiasSemana": [
{
"DiaNum": "2",
"DiaQtdeTreinos": 1,
"DiaTreinos": [
{
"TreinoID": "32",
"TreinoDiaSemana": "2",
"TreinoDescricao": "INICIANTE",
"TreinoCategoria": null
}
]
},
{
"DiaNum": "3",
"DiaQtdeTreinos": 1,
"DiaTreinos": [
{
"TreinoID": "32",
"TreinoDiaSemana": "3",
"TreinoDescricao": "INICIANTE",
"TreinoCategoria": null
}
]
},
{
"DiaNum": "4",
"DiaQtdeTreinos": 1,
"DiaTreinos": [
{
"TreinoID": "32",
"TreinoDiaSemana": "4",
"TreinoDescricao": "INICIANTE",
"TreinoCategoria": null
}
]
},
{
"DiaNum": "5",
"DiaQtdeTreinos": 1,
"DiaTreinos": [
{
"TreinoID": "32",
"TreinoDiaSemana": "5",
"TreinoDescricao": "INICIANTE",
"TreinoCategoria": null
}
]
},
{
"DiaNum": "6",
"DiaQtdeTreinos": 1,
"DiaTreinos": [
{
"TreinoID": "32",
"TreinoDiaSemana": "6",
"TreinoDescricao": "INICIANTE",
"TreinoCategoria": null
}
]
},
{
"DiaNum": "7",
"DiaQtdeTreinos": 1,
"DiaTreinos": [
{
"TreinoID": "32",
"TreinoDiaSemana": "7",
"TreinoDescricao": "INICIANTE",
"TreinoCategoria": null
}
]
}
],
"ErroMsg": false
}
}
Treinos.cs
namespace BlazorApp.Classes
{
public partial class Treinos
{
public TreinosSemana TreinosSemana { get; set; }
}
public partial class TreinosSemana
{
public long Registros { get; set; }
public DiasSemana[] DiasSemana { get; set; }
public bool ErroMsg { get; set; }
}
public partial class DiasSemana
{
public long DiaNum { get; set; }
public long DiaQtdeTreinos { get; set; }
public DiaTreino[] DiaTreinos { get; set; }
}
public partial class DiaTreino
{
public long TreinoId { get; set; }
public long TreinoDiaSemana { get; set; }
public string TreinoDescricao { get; set; }
public object TreinoCategoria { get; set; }
}
}
主页.razor
@page "/"
@inject HttpClient Http
@code {
private Treinos treinos = new Treinos();
protected override async Task OnInitializedAsync()
{
treinos = await Http.GetJsonAsync<Treinos>("sample-data/treinos.json");
Console.WriteLine(treinos.TreinosSemana.Registros);
}
}
但这给我一个错误:
blazor.webassembly.js:1 WASM:未处理的异常渲染组件:
blazor.webassembly.js:1 WASM:System.NullReferenceException:对象引用未设置为对象的实例。
blazor.webassembly.js:1 WASM:在 E:\Programação\Blazor\BlazorApp\Pages\Home.razor:12 中的 BlazorApp.Pages.Home.OnInitializedAsync () [0x0009b]
WASM:在 Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync () <0x1f47d40 + 0x00176> 在 <79f1a91c13df4c50b01e437f9a5bf79e>:0
WASM:在 Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask (System.Threading.Tasks.Task taskToHandle) <0x2160560 + 0x000f4> 在 <79f1a91c13df4c50b01e437f9a5bf79e>:0
我做错了什么,有人可以帮助我吗?
解决方案
推荐阅读
- sql - 如何总结不同的重叠时间范围?
- python - 如何使这个函数递归?
- java - 如何在这个平方根程序的打印/数学部分使用计数器控制的迭代
- c# - C# FtpWebRequest 下载的 FTP 文件为空
- python - 提高 pandas 和 dask 聚合自定义函数速度
- python-3.x - 'NoneType 对象没有属性'发送'
- python - 当for循环不起作用时如何留下空单元格?
- javascript - Javascript将时间戳值过滤为聚合值
- windows - Does windows stop services gracefully or kills them when an error (memory overflow, etc) occurs?
- javascript - 即使我在 React App localhost 中滚动,window.pageYOffset 为何总是为 0?