Blazor 或某些 NuGet 包是否支持或扩展嵌套路由的路由?
Does Blazor, or some NuGet package, support or extend the Routing for nested routes?
假设我有一个在线销售和订单处理应用程序。我有客户、发票、发票项目。一位客户对他们上次订单中的某件商品有疑问,想发送一封 link 给他们的销售代表。
Blazor 如何处理 URL 应该类似于...
的情况
https://myapp.com/customer/12345/Invoice/234/InvoiceItem/4
Blazor 路由引擎可以做到这一点吗?
我已经阅读了多篇博文和路由 SEEMS 停在:
/page/{parameter}
而我真的很想
/page/{parameter}/control/{parameter}/control/{parameter}/etc...
这对于 blazor 中内置的内容是绝对可能的,至少对于 .NET Core 3.1 和 .NET5 是这样。
使用不同的参数名称很重要,因为它们映射到剃刀组件 [Parameter]
属性。
对于您的示例,它将是:
@page "/customer/{Customer}/invoice/{Invoice}/invoiceitem/{InvoiceItem}"
<span>Customer: @Customer</span>
<span>Invoice: @Invoice</span>
<span>Item: @InvoiceItem</span>
@code {
[Parameter] public string Customer {get; set;}
[Parameter] public string Invoice {get; set;}
[Parameter] public string InvoiceItem {get; set;}
}
假设我有一个在线销售和订单处理应用程序。我有客户、发票、发票项目。一位客户对他们上次订单中的某件商品有疑问,想发送一封 link 给他们的销售代表。
Blazor 如何处理 URL 应该类似于...
的情况https://myapp.com/customer/12345/Invoice/234/InvoiceItem/4
Blazor 路由引擎可以做到这一点吗?
我已经阅读了多篇博文和路由 SEEMS 停在:
/page/{parameter}
而我真的很想
/page/{parameter}/control/{parameter}/control/{parameter}/etc...
这对于 blazor 中内置的内容是绝对可能的,至少对于 .NET Core 3.1 和 .NET5 是这样。
使用不同的参数名称很重要,因为它们映射到剃刀组件 [Parameter]
属性。
对于您的示例,它将是:
@page "/customer/{Customer}/invoice/{Invoice}/invoiceitem/{InvoiceItem}"
<span>Customer: @Customer</span>
<span>Invoice: @Invoice</span>
<span>Item: @InvoiceItem</span>
@code {
[Parameter] public string Customer {get; set;}
[Parameter] public string Invoice {get; set;}
[Parameter] public string InvoiceItem {get; set;}
}