无法在 NavMenu 中加载数据
Unable to load Data in NavMenu
当我尝试从数据库中为 NavMenu 获取值时,这些值似乎不够快。
导航菜单Html:
<h2>test</h2><h2>@titleList.Single(x => x.name == "test2").value</h2>
导航菜单代码:
protected override async Task OnInitializedAsync()
{
titleList = await client.GetFromJsonAsync<List<NavMenuStringModel>>("api/navMenuStrings");
}
控制器:
[HttpGet]
public async Task<IActionResult> Get()
{
List<NavMenuStringModel> navMenuStringModels = new List<NavMenuStringModel>()
{
new NavMenuStringModel(){name = "test2", value="test2"}
};
return Ok(navMenuStringModels);
}
->Unhandelt 异常在浏览器中。
->控制台显示“当前没有元素与组件 8 相关联”
虽然你没有显示,但我假设 titlelist 被初始化为 null。
所以你可能需要这样的东西:
<h2>test</h2>
@if(titlelist != null)
{
<h2>titleList.SingleOrDefault(x => x.name == "test2").value</h2>
}
如果没有匹配元素,我还建议使用 SingleOrDefault。
最后,您可能需要在填充标题列表后调用 StateHasChanged()。
当我尝试从数据库中为 NavMenu 获取值时,这些值似乎不够快。
导航菜单Html:
<h2>test</h2><h2>@titleList.Single(x => x.name == "test2").value</h2>
导航菜单代码:
protected override async Task OnInitializedAsync()
{
titleList = await client.GetFromJsonAsync<List<NavMenuStringModel>>("api/navMenuStrings");
}
控制器:
[HttpGet]
public async Task<IActionResult> Get()
{
List<NavMenuStringModel> navMenuStringModels = new List<NavMenuStringModel>()
{
new NavMenuStringModel(){name = "test2", value="test2"}
};
return Ok(navMenuStringModels);
}
->Unhandelt 异常在浏览器中。 ->控制台显示“当前没有元素与组件 8 相关联”
虽然你没有显示,但我假设 titlelist 被初始化为 null。
所以你可能需要这样的东西:
<h2>test</h2>
@if(titlelist != null)
{
<h2>titleList.SingleOrDefault(x => x.name == "test2").value</h2>
}
如果没有匹配元素,我还建议使用 SingleOrDefault。
最后,您可能需要在填充标题列表后调用 StateHasChanged()。