如何在blazor navigationTo中将复杂对象作为参数传递

时间:2020-08-26 03:23:25

标签: blazor-client-side blazor-webassembly

在尝试将复杂对象作为参数传递时,它仅传递对象的类型名称。 导航到不同的组件/页面时,传递复杂对象的选项有哪些?

这是我尝试过的 @page“ / showLocation / {SelectedOrgLocation}”

正在发送信息的页面 navManager.NavigateTo($“ ShowLocation?SelectedOrgLocation = {data}”);

1 个答案:

答案 0 :(得分:1)

{data} 对象将被转换为其字符串表示形式,用于字符串插值(即 $"any string with {placeholder}"),因此行为。

此外,路由是 Uri 字符串,NavigateTo() 方法的 uri 参数也是如此。因此,不能通过导航提供复杂类型作为参数。 您应该将 SelectedOrgLocation 的标识值(字符串/整数)作为路由参数传递,并在导航组件内使用该标识符获取位置对象。