IE11 is coming. I just installed the developer preview version. However, if I run some of my web application and I got the error WebForm_DoPostBackWithOptions
Yes, this is the same core issue, and it's fixed by the June 2013 ASP.NET hotfix. See http://blogs.msdn.com/b/ieinternals/archive/2013/09/21/internet-explorer-11-user-agent-string-ua-string-sniffing-compatibility-with-gecko-webkit.aspx
Finally, I found the solution, Thanks Scott Hunter's advice.
If you want to solve the IE11 issue, please install the hotfix below.
http://support.microsoft.com/kb/2836939 - NDP 4 - Win7SP1/Win2K3SP2/Win2K8R2SP1/Win2K8SP2/VistaSP2/WinXPSP3
http://support.microsoft.com/kb/2836940 - NDP 3.5 SP1 - Win2K3SP2/Win2K8SP2/VistaSP2/WinXPSP3
http://support.microsoft.com/kb/2836941 - NDP 2.0 SP2 - Win2K3SP2/WinXPSP3
http://support.microsoft.com/kb/2836942 - NDP 3.5 SP1 - Win7SP1/Win2K8R2SP1
http://support.microsoft.com/kb/2836943 - NDP 2.0 SP2 - Win7SP1/Win2K8R2SP1
http://support.microsoft.com/kb/2836945 - NDP 2.0 SP2 - Win2K8SP2/VistaSP2
http://support.microsoft.com/kb/2836946 - NDP 2.0 SP2 - Win8RTM/WinRTRTM/Win2K12RTM
For anyone struggling to understand why user2919107's answer above (putting a custom .browser file for IE11 in your App_Browsers folder) doesn't work, try to touch an existing .browser file in your App_Browsers folder.
Simply creating/copying the IE11 .browser file doesn't work. You need to touch an existing .browser file so that App_Browsers contents are re-compiled and taken into account.
I tried every patch that I've seen listed on the internet, including the ones listed here. The only thing that actually seemed to work was installing the .NET 4.5 Framework on the server.
Get it here: http://www.microsoft.com/en-us/download/details.aspx?id=30653
Hope this saves someone a few of the hours I've lost on this one.
I had a similar issue with Internet Explorer 11 not being detected correctly by .NET 4.0 framework. Here's how I worked around the problem:
Installing the suggested patches didn't do the trick. After digging deeper into the issue, I found that although the http://support.microsoft.com/kb/2836939 patch is installed on the server, the browser is still recognized as Mozilla with version 0.0 on the server. After additional research I found that if you have any .browser
file in your site's app_browsers
folder, the version detected on the server is wrong, namely Mozilla 0.0.
To work around the issue I created a custom .browser
file in the app_browsers
directory with the following content:
<browsers>
<browser id="IE11" parentID="Mozilla">
<identification>
<userAgent match="Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />
<userAgent nonMatch="IEMobile" />
</identification>
<capture>
<userAgent match="Trident/(?'layoutVersion'\d+)" />
</capture>
<capabilities>
<capability name="browser" value="IE" />
<capability name="layoutEngine" value="Trident" />
<capability name="layoutEngineVersion" value="${layoutVersion}" />
<capability name="extra" value="${extra}" />
<capability name="isColor" value="true" />
<capability name="letters" value="${letters}" />
<capability name="majorversion" value="${major}" />
<capability name="minorversion" value="${minor}" />
<capability name="screenBitDepth" value="8" />
<capability name="type" value="IE${major}" />
<capability name="version" value="${version}" />
</capabilities>
</browser>
<!-- Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11,0) like Gecko -->
<browser id="IE110" parentID="IE11">
<identification>
<capability name="majorversion" match="11" />
</identification>
<capabilities>
<capability name="ecmascriptversion" value="3.0" />
<capability name="jscriptversion" value="5.6" />
<capability name="javascript" value="true" />
<capability name="javascriptversion" value="1.5" />
<capability name="msdomversion" value="${majorversion}.${minorversion}" />
<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" />
</capabilities>
</browser>
</browsers>
A similar approach is suggested in the following article: doPostback failing in IE 11+ Windows 8.1
I would like to clarify that the issue is happening only with .NET 4.0. With .NET 4.5, the browser and its version are detected correctly.
If you are running windows 2003 and are unable to apply any hotfix; try setting the ClientTarget property of the Page object in the Page_Init of your ASP.NET page to "uplevel".
protected void Page_Init(object sender, EventArgs e)
{
Page.ClientTarget = "uplevel";
}