Erkennt Internet explorer browser-version Probleme
Habe ich Urlaub in meinem MVC3-Anwendung im Layout :
@if ((Request.Browser.Browser == "IE") && ((Request.Browser.MajorVersion == 7)))
{
//show some content
}
else
{
//show another content
}
Ich habe viele Benutzer beschwert (Benutzer mit internet explorer 8). Sie finden Sie unter Internet explorer 7 Inhalte von meiner app.
Was falsch mit meiner Art der Erkennung Internet explorer 7-version?
Wie kann ich sicher sein, dass für 100% in meiner Anwendung, dass Benutzer internet explorer 7-version?
Kann sein, dass das spezifische OS-problem?
Sind Ihre Internet-Explorer-8-Nutzer anschließen, die in der Kompatibilitätsansicht?
InformationsquelleAutor Oleg Yudovich | 2012-12-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das Problem ist die HttpBrowserCapabilities aka
Request.Browser
- Klasse analysiert dieuserAgent
header aus der Anfrage die Informationen über den client (in deinem Fall der browser), die vielleicht nicht immer 100% zuverlässig, wie die user-agents sind leicht veränderbar.Wenn Sie wissen, was Wert
MajorVersion
ist zurück und es ist konsequent genug, könnten Sie eventuell ein Update für die es. Alternativ könnten Sie versuchen, die Kontrolle für die Browser, die niedriger als IE8 statt (aber wieder nicht zu 100%) z.B.Könnten Sie analysieren die OS-version und wenn es Windows XP ändern Sie Ihren Scheck an
Request.Browser.MajorVersion < 7
für IE7 sonstRequest.Browser.MajorVersion == 7
OS-version? Dies ist die web-Anwendung... ist Es möglich?
ja, die OS-version ist in der Regel an, zusammen als Teil der user-agent z.B.
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
- In diesem Fall der browser ist IE9 und das OS ist Windows 7 (oder Windows Server 2008). Für XP würden Sie suchen fürNT 5.X
.Vielen Dank. Dies kann helfen
InformationsquelleAutor James
Die Versionsnummer muss spezifisch für den IE.
InformationsquelleAutor RGR