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
Ottenere il riferimento alla finestra che ha aperto un'altra finestra con HTML5 e JavaScript
Le novità di .NET 7 e C# 11
Gestire tipi complessi in query string grazie a IParsable in ASP.NET Core 7.0
Filtrare le chiamate HTTP ad un App Service in base al servizio Azure
Eseguire uno scroll all'interno di una pagina Blazor
Produrre un inventario automatico di Azure Storage
Definire una tabella come memory optimized su Sql Server tramite EF Core
3 metodi JavaScript che ogni applicazione web dovrebbe contenere - Parte 2
Utilizzare il browser per rilevare Javascript e CSS non utilizzati nel codice
Mostrare una preview durante l'upload di un'immagine in Blazor
Organizzare il codice JavaScript utilizzando i moduli
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Effettuare update massivi con Entity Framework Core 7
- Linting di un Dockerfile con un workflow di GitHub
- Sfruttare la local cache del browser tramite gli ETag in #aspnetcore https://aspit.co/cfc di @crad77 #webapi #aspnetmvc #blazor #cache
- 3 metodi JavaScript che ogni applicazione web dovrebbe contenere - Parte 2