Come abbiamo visto nel nostro recente articolo (https://www.aspitalia.com/articoli/asp.net-core3/web-ui-interattive-blazor-server.aspx), in Blazor possiamo specificare la route a cui un component risponde con una sintassi simile a quella di ASP.NET MVC:
@page "/products/{id:int}" <h1>Product @Id</h1> Description of this product. @code { [Parameter] public int Id { get; set; } }
Alle volte, però, può essere necessario rendere questo parametro opzionale, per esempio perché vogliamo riutilizzare lo stesso componente di Edit di un Product anche per le operazioni di Insert.
Per farlo, è sufficiente aggiungere un'altra route tramite la direttiva @page, priva del parametro Id:
@page "/products" @page "/products/{id:int}" <h1>Product @Id</h1> Description of this product. @code { [Parameter] public int? Id { get; set; } }
Come possiamo notare dal codice in alto, abbiamo anche dovuto cambiare il tipo della proprietà Id da int a Nullable
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare le navigation property in QuickGrid di Blazor
Utilizzare QuickGrid di Blazor con Entity Framework
Filtrare i dati di una QuickGrid in Blazor con una drop down list
Gestione dell'annidamento delle regole dei layer in CSS
Cambiare la chiave di partizionamento di Azure Cosmos DB
Aggiungere interattività lato server in Blazor 8
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Eseguire operazioni sui blob con Azure Storage Actions
Autenticarsi in modo sicuro su Azure tramite GitHub Actions
C# 12: Cosa c'è di nuovo e interessante
Eseguire una query su SQL Azure tramite un workflow di GitHub
Miglioramenti nell'accessibilità con Angular CDK