Le Windows Store app possono essere associate ad un URI Schema in modo che possano essere aperte da altre applicazioni, passando anche dei parametri.
Possiamo registrare uno Schema attraverso il tab Declarations del manifest.

Nella configurazione abbiamo associato lo Schema custom-app, in questo modo possiamo richiamare l'app semplicemente con un URI: custom-app://test-parameter.
Quando invochiamo questo URI, anche attraverso un browser, l'applicazione associata si avvia e scatta il metodo OnActivated dell'Application.
protected override void OnActivated(IActivatedEventArgs e) { base.OnActivated(e); if (e.Kind == ActivationKind.Protocol) { var args = e as ProtocolActivatedEventArgs; if (args != null) { var rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(MainPage), args.Uri); Window.Current.Activate(); } } }
In tale metodo possiamo controllare la provenienza dell'attivazione dal parametro Kind di IActivatedEventArgs, nel caso di attivazione da URI, come possiamo vedere nello snippet, questo corrisponde a ActivationKind.Protocol.
Nella proprietà Uri di IActivatedEventArgs possiamo accedere all'indirizzo completo e recuperare i parametri usati nell'invocazione.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Introduzione ai web component HTML
Loggare le query più lente con Entity Framework
Rendere le variabili read-only in una pipeline di Azure DevOps
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Eseguire query in contemporanea con EF
Esporre un server MCP esistente con Azure API Management
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Integrare OpenAI tramite Aspire
Anonimizzare i dati sensibili nei log di Azure Front Door
Aggiornare a .NET 9 su Azure App Service
Applicare un filtro per recuperare alcune issue di GitHub