Il nuovo server SDK dei Mobile App Services ha il pregio di rimuovere molte delle dipendenze che caratterizzavano le precedenti versioni. Una di queste riguarda il motore di IoC, che sin da Azure Mobile Services era ancorato alla libreria Autofac.
Ora invece, un progetto Mobile App Services è molto più simile a una normale applicazione ASP.NET Web API, e quindi è molto semplice personalizzarne le fondamenta come più ci piace. Per esempio, se vogliamo utilizzare Ninject, è sufficiente aggiungere i due package seguenti:
Install-Package Ninject.Web.WebApi Install-Package Ninject.Web.WebApi.WebHost
A questo punto, troveremo nella cartella App_Start la classe NinjectWebCommon all'interno della quale possiamo configurare i nostri servizi. Per esempio:
private static void RegisterServices(IKernel kernel)
{
kernel.Bind<MyDbContext>().ToSelf().InRequestScope();
}Fin qui la procedura è assolutamente standard. Nel file Startup.MobileApp.cs, invece, dobbiamo fare alcune modifiche, come possiamo notare dai commenti nel codice seguente:
public static void ConfigureMobileApp(IAppBuilder app)
{
// Ninject usa la configurazione di default per WebHost
HttpConfiguration config = GlobalConfiguration.Configuration;
config.EnableSystemDiagnosticsTracing();
new MobileAppConfiguration()
.UseDefaultConfiguration()
.ApplyTo(config);
// .. altro codice qui ..
// commentare la riga seguente
// app.UseWebApi(config);
}I cambiamenti consistono nell'utilizzare l'istanza statica di configurazione per WebHost e di commentare l'istruzione app.UseWebApi, visto che i MessageHandler sono per default già configurati.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Integrare SQL Server in un progetto .NET Aspire
Definire il metodo di rilascio in .NET Aspire
Evidenziare una porzione di testo in un pagina dopo una navigazione
Scrivere selettori CSS più semplici ed efficienti con :is()
Gestione file Javascript in Blazor con .NET 9
Controllare la velocità di spostamento su una pagina HTML
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Simulare Azure Cosmos DB in locale con Docker
Ricevere notifiche sui test con Azure Load Testing
Utilizzare Intersect e Except per filtrare set di dati in TSql


