Asp.net IE 11被检测为IE 7.0

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

我试图检测我用户的浏览器,我想停止所有小于10的IE版本。这就是为什么我创建了两种不同的方法,两种方法都是一样的:第一种方法依赖于userAgent,第二种方法依赖于浏览器名称和版本:

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
a
String
,而是
Integer
。@TnTinMn是正确的。它是一根绳子。您需要首先解析。可能是Intranet站点的兼容性视图?检查你的IE设置。谢谢,你救了我一天。很高兴能帮上忙。我们都在那里-IE和它有趣的默认设置。不是
HttpContext.Current.Request.Browser.Version
a
String
,而是
Integer
。@TnTinMn是正确的。它是一根绳子。您需要首先解析。