Asp.net IE 11被检测为IE 7.0
我试图检测我用户的浏览器,我想停止所有小于10的IE版本。这就是为什么我创建了两种不同的方法,两种方法都是一样的:第一种方法依赖于userAgent,第二种方法依赖于浏览器名称和版本:Asp.net IE 11被检测为IE 7.0,asp.net,vb.net,internet-explorer,webbrowser-control,internet-explorer-11,Asp.net,Vb.net,Internet Explorer,Webbrowser Control,Internet Explorer 11,我试图检测我用户的浏览器,我想停止所有小于10的IE版本。这就是为什么我创建了两种不同的方法,两种方法都是一样的:第一种方法依赖于userAgent,第二种方法依赖于浏览器名称和版本: Public Function DetectBrowser() As Boolean Dim accept As Boolean = True Dim version As Integer = 0 'Dim userAgent = HttpContext.Curr
Public Function DetectBrowser() As Boolean
Dim accept As Boolean = True
Dim version As Integer = 0
'Dim userAgent = HttpContext.Current.Request.UserAgent
'Dim MSIE = userAgent.IndexOf("MSIE ")
'If MSIE > 0 Then
' ' IE 10 or older
' Dim cutteduserAgent = userAgent.Substring(MSIE + 5)
' version = Integer.Parse(cutteduserAgent.Substring(0, cutteduserAgent.IndexOf(".")), 10)
' If version < 10 Then
' accept = False
' ' Else case will be true as it is defined by default
' End If
'End If
Dim browser = HttpContext.Current.Request.Browser.Browser
If browser = "IE" Then
version = HttpContext.Current.Request.Browser.Version
If version < 10 Then
accept = False
End If
End If
DetectBrowser = accept
End Function
公共函数DetectBrowser()为布尔值
Dim接受为布尔值=真
Dim版本为整数=0
'Dim userAgent=HttpContext.Current.Request.userAgent
'Dim MSIE=userAgent.IndexOf(“MSIE”)
'如果MSIE>0,则
”“10岁或以上
'Dim cutteduserAgent=userAgent.Substring(MSIE+5)
'version=Integer.Parse(cutteduserAgent.Substring(0,cutteduserAgent.IndexOf(“.”),10)
'如果版本<10,则
'接受=错误
“”Else大小写将为true,因为它是默认定义的
"完"
"完"
Dim browser=HttpContext.Current.Request.browser.browser
如果browser=“IE”,则
version=HttpContext.Current.Request.Browser.version
如果版本<10,则
接受=错误
如果结束
如果结束
DetectBrowser=接受
端函数
我在default.aspx页面中使用此方法,如果此方法返回false,则用户将重定向到OutdatedBrowser.aspx页面,否则用户将重定向到登录页面。除此之外,我还添加了要在outdatedBrowser.aspx页面中显示的浏览器名称和版本。但是当我的一个用户给我发这张照片时,我被噎住了
如果他点击“关于Internet Explorer”,会出现一个弹出窗口,显示IE版本11。但正如您所见(底部的黑色句子),我的代码检测到的是“浏览器:IE版本:7.0”,而不是“浏览器:Mozilla版本:0.0”
我已经尝试了上述两种方法,并且都将此用户重定向到outdatedBrowser.aspx页面。可能是什么问题?我如何解决?我有IE 11,我从来没有遇到过这个问题…内联网站点的兼容性视图可能?检查你的IE设置。谢谢,你救了我一天。很高兴能帮上忙。我们都在那里-IE和它有趣的默认设置。不是
HttpContext.Current.Request.Browser.Version
aString
,而是Integer
。@TnTinMn是正确的。它是一根绳子。您需要首先解析。可能是Intranet站点的兼容性视图?检查你的IE设置。谢谢,你救了我一天。很高兴能帮上忙。我们都在那里-IE和它有趣的默认设置。不是HttpContext.Current.Request.Browser.Version
aString
,而是Integer
。@TnTinMn是正确的。它是一根绳子。您需要首先解析。