Con il rilascio di Windows 8.1, atteso per metà ottobre, sarà rilasciato sul mercato anche IE 11. Questa nuova versione di Internet Explorer presenta diverse novità, che vanno verso la direzione di un supporto più esteso agli standard web. Nell'ottica di migliorare il riconoscimento da parte dei framework che fanno browser detection, Microsoft ha recentemente cambiato lo user agent, che ora assomiglia a quello di FireFox:
Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko
Purtroppo, questo cambio di user agent comporta un differente riconoscimento da parte di ASP.NET del browser, che si traduce nell'impossibilità di far funzionare alcune feature, come quelle legate al JavaScript delle Web Forms, perché il browser non viene riconosciuto come IE.
Il .NET Framework 4.5.1, atteso con Visual Studio 2013 per la data di rilascio di Windows 8.1, include nuove browser definition che riconoscono in maniera diretta IE 11. Essendo una patch sulla versione 4.5, una volta applicata sui server, il browser sarà riconosciuto automaticamente anche dalle applicazioni che dovessero utilizzare la versione 4.
Tuttavia, se state utilizzando una versione precedente o non avete controllo diretto del server, potete creare un nuovo file all'interno della directory App_Browsers, posta sotto la root del sito, con questo contenuto:
<browsers> <browser id="InternetExplorer" parentID="Mozilla"> <identification> <userAgent match="Trident/(?'tridentversion'\d+\.\d+); rv:(?'version'\d+\.\d+)" /> </identification> <capabilities> <capability name="browser" value="InternetExplorer" /> <capability name="tridentversion" value="${tridentversion}" /> <capability name="version" value="${version}" /> <capability name="type" value="InternetExplorer" /> </capabilities> </browser> </browsers>
Questo file è stato ricreato perché ricordi la definizione offerta poi dalla versione 4.5.1.
E' anche possibile registrare globalmente il file, salvandolo all'interno della directory C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\Browsers e lanciando da riga di comando aspnet_regiis -i, dopo esserci posizionati nella directory di installazione del .NET Framework.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare Model as a Service su Microsoft Azure
Sostituire la GitHub Action di login su private registry
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
Gestire la cancellazione di una richiesta in streaming da Blazor
Creare gruppi di client per Event Grid MQTT
Configurare dependabot per aggiornare le dipendenze di terze parti con GitHub Actions
Potenziare Azure AI Search con la ricerca vettoriale
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Migrare una service connection a workload identity federation in Azure DevOps
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Implementare il throttling in ASP.NET Core