我在Windows 8.1预览中的IE 11中得到空白页。检查页面后,我认为下面的代码可能是罪魁祸首,因为在这些行之后没有进一步显示调试器窗口的行,所以代码在这行之后就破了
IE 11<!-- <form name="aspnetForm" method="post" action="Register" id="aspnetForm">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTkwNDQ3O
我在Windows 8.1预览版的Chrome版本29.0.1547.57中尝试了相同的页面它在那里正常工作,我得到了以下代码。
反转片
<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['aspnetForm'];
if (!theForm) {
theForm = document.aspnetForm;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
</script>
- &GT;
答案 0 :(得分:21)
我们在C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ Browsers中创建了一个新的“ie11.browser”文件,现在ASP.NET正常工作。创建文件后,我们运行“aspnet_regbrowsers -i”并重新启动IIS。 我们只是复制了IE6-9的功能。我们不知道这是否准确,但ASP.NET现在正在使用在Windows 8.1上运行的Explorer 11 我们的ie11.browser文件如下所示:
<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>
答案 1 :(得分:10)
我遇到过类似的问题,想分享我的发现以及我是如何解决它的。 直接问题: .NET Framework 4.0无法正确识别Internet Explorer 11浏览器。这可以通过调用:
在一个简单的网站和一个显示请求中的浏览器信息的页面上进行验证Request.Browser.Browser
Request.Browser.Version
没有任何补丁的结果是: Mozilla 0.0 应用following article上提到的修补程序后,浏览器详细信息将变为: IE 11.0 但是,这种方法在没有自定义.browser文件的网站上正常工作。我发现,如果您的站点中的系统app_browsers文件夹中只有一个空文件,那么浏览器和版本将再次出现错误,即 Mozilla 0.0 (尽管.NET 4.0的补丁已经存在安装)。 通过将 Sistemas-infoe 在上一篇文章中提供的代码包含在.browser文件中并将其放入网站的app_browsers文件夹中,我设法解决了这个问题。 我想澄清一下,问题只发生在.NET 4.0上,而使用.NET 4.5时,浏览器及其版本被正确检测。
我希望这会有所帮助。
最诚挚的问候, 米哈伊尔
答案 2 :(得分:9)
您可能会因为IIS上的浏览器检测问题而绊倒。 Scott Hanselman过去曾用IE10写过这个问题,而你所遇到的问题似乎反映了他的描述。
当时可用的修补程序http://support.microsoft.com/kb/2600088声明:
默认情况下,ASP.NET使用嗅探技术为用户代理字符串检测浏览器。浏览器定义文件涵盖一定范围的浏览器版本。但是,随着版本号的增加,ASP.NET可能无法使用用户代理字符串识别新版本的浏览器。在这种情况下,ASP.NET可能会将这些版本作为未知浏览器处理。例如,ASP.NET无法识别具有以下用户代理字符串的Windows Internet Explorer 10:
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)
但是,由于新的用户代理格式,此修补程序似乎不适用于IE11。有一个名为App_Browsers的NuGet包可能包含修复程序,但在此之前您必须编写自己的规则。
MSDN Browser Definition File Schema提供了有关如何编写浏览器检测文件的详细信息;您将在C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ Browsers中找到现有文件。
根据MSDN Compatibilty Changes in IE11 Preview,预览中IE11的用户代理是:
Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko
标准IE正则表达式无法识别(因此您遇到的问题),但以下情况应该起作用:
Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)
我没有在实时环境中对其进行测试,但这确实正确地解析了主要版本和次要版本,这是解决原始问题的关键 - 尝试将其添加为文件ie.browser
中的另一个匹配项。 / p>
<小时/> 请注意a similar question was asked on MSDN recently - 可能值得关注并做出贡献。
答案 3 :(得分:9)
Microsoft修补程序“2600088”肯定不起作用,因此您必须采用.browser文件路径。
使用最新版本的IE11,您需要对上面Sistemas-infoe发布的ie.browser文件RegEx进行小修改。确保在分号和空格之间的UA字符串中允许更多字符。如果你的RegEx技能很糟糕(很像我的),那就是一个明星时期。
OLD:
<userAgent match="Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />
NEW:
<userAgent match="Trident\/7.0;.*rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />
您可以使用以下方法测试ASP.Net是否正在识别修订版和.browser文件:
Response.Write (Request.Browser.MajorVersion)
如果返回11,那么你的JS错误应该消失了。 VOILA!
2013年10月发布了第二个MS补丁。我现在可以删除.browser文件并只使用补丁。到目前为止运作良好。 - 见http://support.microsoft.com/kb/2836939
答案 4 :(得分:2)
只需添加另一个选项即可。这个/.browser文件似乎对我有用。
答案 5 :(得分:1)
我使用了Sistemas-infoe上面提到的上面的ie11.browser文件,把它放在App_Browser文件夹中,它在Windows 2003,II6上工作。
对于预编译的代码,请确保从bin文件夹中删除__browserCapabilitiesCompiler.compiled以使其识别新文件。
什么行不通的是这里给出的解决方案http://support.microsoft.com/kb/2836939/en-us 此外,将此文件放在C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ Browsers并使用aspnet_regbrowsers.exe -i注册它不起作用。
几乎忘了提。如果这个解决方案没有起作用,接下来我会尝试这个。 http://jwcooney.com/2013/11/19/asp-net-doesnt-detect-ie11/
答案 6 :(得分:1)
我发现最简单的解决方法是安装.Net 4.5.1,我甚至不需要更改我们的应用程序使用的版本!
答案 7 :(得分:0)
不同的ISP会将其服务器锁定到特定的Build和IGNORE有价值的修复程序。 英国的FASTHOSTS将他们的.net 3.5服务器锁定,并且没有应用IE Fixes,而是让程序员根据需要引入浏览器文件。
通常的政策是通过ISP的呼声锁定服务器“它确保了程序员的稳定环境!”
以下内容来自Scott Hanselman网站/详细解决方案当IE10即将爆炸并最近调整时。没有它,例如,文本框的Ajax工具包水印扩展器不能正确应用类。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
<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>
<!-- Below is older entry -->
<browser id="IE5to9" parentID="IE">
<identification>
<capability name="majorversion" match="^[5-9]|[1-9]\d+" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="activexcontrols" value="true" />
<capability name="backgroundsounds" value="true" />
<capability name="cookies" value="true" />
<capability name="css1" value="true" />
<capability name="css2" value="true" />
<capability name="ecmascriptversion" value="1.2" />
<capability name="frames" value="true" />
<capability name="javaapplets" value="true" />
<capability name="javascript" value="true" />
<capability name="jscriptversion" value="5.0" />
<capability name="msdomversion" value="${majorversion}${minorversion}" />
<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="tagwriter" value="System.Web.UI.HtmlTextWriter" />
<capability name="vbscript" value="true" />
<capability name="w3cdomversion" value="1.0" />
<capability name="xml" value="true" />
</capabilities>
</browser>
<browser id="IE6to9" parentID="IE5to9">
<identification>
<capability name="majorversion" match="[6-9]|[1-9]\d+" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="jscriptversion" value="5.6" />
<capability name="ExchangeOmaSupported" value="true" />
</capabilities>
</browser>
<!-- sample UA "Mozilla/4.0 (compatible; MSIE 6.0; Windows 95; PalmSource; Blazer 3.0) 16;160x160" -->
<browser id="Treo600" parentID="IE6to9">
<identification>
<userAgent match="PalmSource; Blazer" />
</identification>
<capture>
<userAgent match="PalmSource; Blazer 3\.0\)\s\d+;(?'screenPixelsHeight'\d+)x(?'screenPixelsWidth'\d+)$" />
</capture>
<capabilities>
<capability name="browser" value="Blazer 3.0" />
<capability name="cachesAllResponsesWithExpires" value="false" />
<capability name="canInitiateVoiceCall" value="true" />
<capability name="canRenderEmptySelects" value="true" />
<capability name="canSendMail" value="true" />
<capability name="cookies" value="true" />
<capability name="ecmascriptversion" value="1.1" />
<capability name="hidesRightAlignedMultiselectScrollbars" value="false" />
<capability name="inputType" value="keyboard" />
<capability name="isColor" value="true" />
<capability name="javascript" value="true" />
<capability name="jscriptversion" value="0.0" />
<capability name="maximumHrefLength" value="10000" />
<capability name="maximumRenderedPageSize" value="300000" />
<capability name="mobileDeviceManufacturer" value="" />
<capability name="mobileDeviceModel" value="" />
<capability name="preferredImageMime" value="image/jpeg" />
<capability name="preferredRenderingMime" value="text/html" />
<capability name="preferredRenderingType" value="html32" />
<capability name="preferredRequestEncoding" value="utf-8" />
<capability name="preferredResponseEncoding" value="utf-8" />
<capability name="rendersBreaksAfterHtmlLists" value="true" />
<capability name="requiredMetaTagNameValue" value="PalmComputingPlatform" />
<capability name="requiresAttributeColonSubstitution" value="false" />
<capability name="requiresContentTypeMetaTag" value="false" />
<capability name="requiresControlStateInSession" value="false" />
<capability name="requiresDBCSCharacter" value="false" />
<capability name="requiresFullyQualifiedRedirectUrl" value="false" />
<capability name="requiresHtmlAdaptiveErrorReporting" value="false" />
<capability name="requiresLeadingPageBreak" value="false" />
<capability name="requiresNoBreakInFormatting" value="false" />
<capability name="requiresOutputOptimization" value="false" />
<capability name="requiresPostRedirectionHandling" value="false" />
<capability name="requiresPragmaNoCacheHeader" value="true" />
<capability name="requiresUniqueFilePathSuffix" value="true" />
<capability name="requiresUniqueHtmlCheckboxNames" value="false" />
<capability name="screenBitDepth" value="24" />
<capability name="screenCharactersHeight" value="13" />
<capability name="screenCharactersWidth" value="32" />
<capability name="screenPixelsHeight" value="${screenPixelsHeight}" />
<capability name="screenPixelsWidth" value="${screenPixelsWidth}" />
<capability name="supportsAccessKeyAttribute" value="true" />
<capability name="supportsBodyColor" value="true" />
<capability name="supportsBold" value="true" />
<capability name="supportsCharacterEntityEncoding" value="true" />
<capability name="supportsCss" value="false" />
<capability name="supportsDivAlign" value="true" />
<capability name="supportsDivNoWrap" value="false" />
<capability name="supportsEmptyStringInCookieValue" value="true" />
<capability name="supportsFileUpload" value="false" />
<capability name="supportsFontColor" value="true" />
<capability name="supportsFontName" value="false" />
<capability name="supportsFontSize" value="true" />
<capability name="supportsImageSubmit" value="true" />
<capability name="supportsIModeSymbols" value="false" />
<capability name="supportsInputIStyle" value="false" />
<capability name="supportsInputMode" value="false" />
<capability name="supportsItalic" value="true" />
<capability name="supportsJPhoneMultiMediaAttributes" value="false" />
<capability name="supportsJPhoneSymbols" value="false" />
<capability name="supportsMultilineTextBoxDisplay" value="true" />
<capability name="supportsQueryStringInFormAction" value="true" />
<capability name="supportsRedirectWithCookie" value="true" />
<capability name="supportsSelectMultiple" value="true" />
<capability name="supportsUncheck" value="true" />
<capability name="tables" value="true" />
<capability name="type" value="Handspring Treo 600" />
</capabilities>
<controlAdapters />
</browser>
<browser id="IE5" parentID="IE5to9">
<identification>
<capability name="majorversion" match="^5$" />
</identification>
</browser>
<browser id="IE50" parentID="IE5">
<identification>
<capability name="minorversion" match="^\.0"/>
</identification>
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter" />
</controlAdapters>
</browser>
<browser id="IE55" parentID="IE5">
<identification>
<capability name="minorversion" match="^\.5"/>
</identification>
<capabilities>
<capability name="jscriptversion" value="5.5" />
<capability name="ExchangeOmaSupported" value="true" />
</capabilities>
</browser>
<browser id="IE5to9Mac" parentID="IE5to9">
<identification>
<capability name="platform" match="(MacPPC|Mac68K)" />
</identification>
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter" />
</controlAdapters>
</browser>
<browser id="IE4" parentID="IE">
<identification>
<userAgent match="MSIE 4" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="activexcontrols" value="true" />
<capability name="backgroundsounds" value="true" />
<capability name="cdf" value="true" />
<capability name="cookies" value="true" />
<capability name="css1" value="true" />
<capability name="ecmascriptversion" value="1.2" />
<capability name="frames" value="true" />
<capability name="javaapplets" value="true" />
<capability name="javascript" value="true" />
<capability name="jscriptversion" value="3.0" />
<capability name="msdomversion" value="4.0" />
<capability name="supportsFileUpload" value="true" />
<capability name="supportsMultilineTextBoxDisplay" value="false" />
<capability name="supportsMaintainScrollPositionOnPostback" value="true" />
<capability name="tables" value="true" />
<capability name="tagwriter" value="System.Web.UI.HtmlTextWriter" />
<capability name="vbscript" value="true" />
</capabilities>
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter" />
</controlAdapters>
</browser>
<browser id="IE3" parentID="IE">
<identification>
<capability name="majorversion" match="^3" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="activexcontrols" value="true" />
<capability name="backgroundsounds" value="true" />
<capability name="cookies" value="true" />
<capability name="css1" value="true" />
<capability name="ecmascriptversion" value="1.0" />
<capability name="frames" value="true" />
<capability name="javaapplets" value="true" />
<capability name="javascript" value="true" />
<capability name="jscriptversion" value="1.0" />
<capability name="supportsMultilineTextBoxDisplay" value="false" />
<capability name="tables" value="true" />
<capability name="vbscript" value="true" />
</capabilities>
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter" />
</controlAdapters>
</browser>
<browser id="IE3win16" parentID="IE3">
<identification>
<userAgent match="16bit|Win(dows 3\.1|16)" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="activexcontrols" value="false" />
<capability name="javaapplets" value="false" />
</capabilities>
</browser>
<browser id="IE3win16a" parentID="IE3win16">
<identification>
<capability name="extra" match="^a" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="beta" value="true" />
<capability name="javascript" value="false" />
<capability name="vbscript" value="false" />
</capabilities>
</browser>
<browser id="IE3Mac" parentID="IE3">
<identification>
<userAgent match="PPC Mac|Macintosh.*(68K|PPC)|Mac_(PowerPC|PPC|68(K|000))" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="activexcontrols" value="false" />
<capability name="vbscript" value="false" />
</capabilities>
</browser>
<gateway id="IE3AK" parentID="IE3">
<identification>
<capability name="extra" match="; AK;" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="ak" value="true" />
</capabilities>
</gateway>
<gateway id="IE3SK" parentID="IE3">
<identification>
<capability name="extra" match="; SK;" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="sk" value="true" />
</capabilities>
</gateway>
<browser id="IE2" parentID="IE">
<identification>
<capability name="majorversion" match="^2" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="backgroundsounds" value="true" />
<capability name="cookies" value="true" />
<capability name="tables" value="true" />
</capabilities>
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter" />
</controlAdapters>
</browser>
<browser id="IE1minor5" parentID="IE">
<identification>
<capability name="version" match="^1\.5" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="cookies" value="true" />
<capability name="tables" value="true" />
</capabilities>
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter" />
</controlAdapters>
</browser>
<gateway id="IEAOL" parentID="IE">
<identification>
<capability name="extra" match="; AOL" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="aol" value="true" />
<capability name="frames" value="true" />
</capabilities>
</gateway>
<gateway id="IEbeta" parentID="IE">
<identification>
<capability name="letters" match="^([bB]|ab)" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="beta" value="true" />
</capabilities>
</gateway>
<gateway id="IEupdate" parentID="IE">
<identification>
<capability name="extra" match="; Update a;" />
</identification>
<capture>
</capture>
<capabilities>
<capability name="authenticodeupdate" value="true" />
</capabilities>
</gateway>
答案 8 :(得分:0)
只删除了Web.Config的xhtmlConformance标记。