2013-08-30 7 views
6

Wir haben ASP.NET-Anwendung, derzeit machen wir Kompatibilitätstests für diese auf Windows 8.1/IE 11. Gefunden einige Probleme im Zusammenhang mit UI-Ausrichtung, _dopostback und imagebutton klicken. Zuvor waren dieselben Probleme mit Windows 8/IE 10 aufgetreten. Diese Probleme werden behoben, indem die IE-Browserdatei im Ordner app_browser im Projekt hinzugefügt wird. Wir haben jedoch keine neueste IE.Browser-Datei für die IE 11-Unterstützung gefunden. Von einigen der Blogs erfahren, dass Hotfixes vorhanden sind, um diese Probleme zu lösen. Durch die Installation von Hotfixes in der gehosteten Maschine wurden die Probleme mit _dopostback und UI-Ausrichtung behoben. Die Bildschaltfläche funktioniert immer noch nicht.ASP.NET Website Probleme mit Windows 8.1/IE 11 Browser

+0

Hallo, ich habe das gleiche Problem und konnte keine Browser-Definition für IE10 finden, würde es Ihnen etwas ausmachen, es zu teilen? –

Antwort

3

Installieren Sie .NET 4.5 auf dem Server. Es überschreibt ASP.NET-Assemblys mit neueren Versionen, bei denen das bekannte Klickproblem der Bildschaltfläche behoben wurde.

Wir haben dies auch mit einem Hotfix gelöst, aber die Installation von .NET 4.5 wurde schließlich als unsere Lösung akzeptiert.

+0

Vielen Dank für die Antwort, Installation von .NetFramework4.5 behoben __dopostback Problem und die Design-Probleme. Bild-Taste klicken ist immer noch nicht funktionsfähig, Irgendwelche Hilfe in dieser Hinsicht? –

4

Wir sind hier noch nicht in der Lage, auf 4,5 auf der ganzen Linie zu aktualisieren. Aber ich konnte meine eigene ie.browser-Browserdefinitionsdatei (für 4.0) erstellen.

in Ihrem Projekt in den (oder erstellen as) App_Browsers/ie.browser, die folgenden:

<!-- Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko --> 
<browser id="IE11Preview" parentID="Mozilla"> 
    <identification> 
     <userAgent match="Trident/(?'layoutVersion'\d+).*rv:(?'revision'(?'major'\d+)(\.(?'minor'\d+)?))" /> 
     <userAgent nonMatch="MSIE" /> 
    </identification> 

    <capabilities> 
     <capability name="browser"    value="IE" /> 
     <capability name="layoutEngine"   value="Trident" /> 
     <capability name="layoutEngineVersion" value="${layoutVersion}" /> 
     <capability name="isColor"    value="true" /> 
     <capability name="screenBitDepth"  value="8" /> 
     <capability name="ecmascriptversion" value="3.0" /> 
     <capability name="jscriptversion"  value="6.0" /> 
     <capability name="javascript"   value="true" /> 
     <capability name="javascriptversion" value="1.5" /> 
     <capability name="w3cdomversion"  value="1.0" /> 
     <capability name="ExchangeOmaSupported" value="true" /> 
     <capability name="activexcontrols"  value="true" /> 
     <capability name="backgroundsounds"  value="true" /> 
     <capability name="cookies"    value="true" /> 
     <capability name="frames"    value="true" /> 
     <capability name="javaapplets"   value="true" /> 
     <capability name="supportsCallback"  value="true" /> 
     <capability name="supportsFileUpload" value="true" /> 
     <capability name="supportsMultilineTextBoxDisplay" value="true" /> 
     <capability name="supportsMaintainScrollPositionOnPostback" value="true" /> 
     <capability name="supportsVCard"  value="true" /> 
     <capability name="supportsXmlHttp"  value="true" /> 
     <capability name="tables"    value="true" /> 
     <capability name="supportsAccessKeyAttribute" value="true" /> 
     <capability name="tagwriter"   value="System.Web.UI.HtmlTextWriter" /> 
     <capability name="vbscript"    value="true" /> 
     <capability name="revmajor"    value="${major}" /> 
     <capability name="revminor"    value="${minor}" /> 
    </capabilities> 
</browser> 

Wenn Sie eine bestehende Datei hinzufügen, sucht id = "IE10Plus" - Sie Vielleicht möchten Sie das in ID = "IE10" ändern, da der "Plus" -Teil nicht mehr genau ist.

Wenn Sie zu 4.5 tun können, aber wenn Sie nicht können, könnte dies Sie halten, bis Sie können. Alle Patches (oder Upgrades - wie bis 4.5) wird diese überschrieben - FYI ...

4

Hier ist das Update für ASP.NET 4.0:

http://support.microsoft.com/kb/2836939/en-us

Natürlich sind wir über all das Kracken ... erstaunlich, dass MSft nicht einmal daran gedacht hat, IE11 gegen Asp.Net 4.0 zu testen, bevor es veröffentlicht wurde, wahrscheinlich etwas damit zu tun, dass Marihuana kürzlich in Washington legalisiert wurde.

Das Einstellen des Browsers auf IE10 funktioniert auch (vorausgesetzt, der IE10-Hotfix für .NET 4.0 wurde ebenfalls installiert).

Verwandte Änderung: Hier ist Info zu den Benutzer-Agent-Änderungen in ie11. Hoffentlich haben Sie sich nicht darauf verlassen, die User Agent-Zeichenfolge zu entfernen, aber ich glaube, dass die uplevel/downlevel Logik von ASP.NET sie noch in 4.0 und vorher verwendet (bestätigt durch Einstellung von UA ​​auf IE10 gegen einen Server mit .net4.0/ie11) Problem), aber 4,5 tut es angeblich anders (siehe http://www.hanselman.com/blog/IE10AndIE11AndWindows81AndDoPostBack.aspx).

http://msdn.microsoft.com/en-us/library/ie/bg182625(v=vs.85).aspx

0

In meinem Fall war die Lösung einfacher:

  1. öffnen IE11 auf Windows 8
  2. Klicken Sie auf Internetoptionen
  3. Klicken Sie auf Sicherheit
  4. Zum Scripting-Verzeichnis (in der Ende der Liste)
  5. Klicken Sie bei Scripting> Active scripti auf das Optionsfeld Enable ng