如何在课堂上访问浏览器版本

失误节

我正在编写vb.net svg工作流查看器,但需要执行浏览器检测以查看是否应恢复为VML或是否支持SVG。我们的目标浏览器是IE,我知道要检测VB中的浏览器版本,您可以执行以下操作:

Dim myBrowserCaps As System.Web.HttpBrowserCapabilities = Request.Browser
If (CType(myBrowserCaps, System.Web.Configuration.HttpCapabilitiesBase)).Browser.ToUpper().IndexOf("IE") >= 0 Then
    labelText = "Browser is Internet Explorer."
Else
    labelText = "Browser is not Internet Explorer."
End If

或类似的东西。

问题是,虽然我可以直接从.aspx页面检测到浏览器和UserAgent字符串,但是当我将相同的代码放入页面上Web部件所引用的类中时(是Web部件,它是旧产品),我得到了一个错误。该webpart被许多页面引用,这就是为什么我要在类中而不是页面上检测浏览器。

Dim Browser As HttpBrowserCapabilities = Request.Browser
If Browser.Browser = "IE" Then
    'IE Junk
End If

错误很简单 "'Request' is not declared. It may be inaccessible due to its protection level".

这段代码是直接从MSDN文档中复制的,在我的生命中,我找不到任何地方可以解释如何或是否可以从类中完成此操作。我已经浏览了Stack,也没有浏览过他们的文档。

我已经尝试过了HttpRequest.Browser,但是这让我无处可去。

所以,我的两个问题是...

  • 我究竟做错了什么?
  • 由于显然缺少某些内容,因此我对访问请求对象缺少什么?

编辑

最初,我尝试使用当前上下文,但是我做错了。我试过了:

Dim browser as HttpBrowserCapabilities = HttpContext.Request.Browser

应该是什么时候:

Dim browser as HttpBrowserCapabilities = HttpContext.Current.Request.Browser

所以我在语法上(和理解上)错了

我认为该问题可能仍然会有所帮助,因为我找不到在其他任何地方都可以复制的问题。

谢谢大家!

失误节

根据SLaks注释,必须传递HttpContext才能从请求访问浏览器。我最终使用。

 Dim context As HttpContext = HttpContext.Current
 Dim Browser As HttpBrowserCapabilities = context.Request.Browser

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在课堂上访问PDO对象?

来自分类Dev

Android如何在课堂上访问资源?

来自分类Dev

如何在课堂上使用装饰器

来自分类Dev

如何在浏览器而不是localhost上访问远程node.js应用

来自分类Dev

浏览器无法在27017上访问MongoDB

来自分类Dev

无法在多个浏览器上访问Google,Wikipedia?

来自分类Dev

ssh可以在浏览器上访问文件吗?

来自分类Dev

我如何在课堂上支持println?

来自分类Dev

如何在课堂上找到div的元素

来自分类Dev

如何在课堂上使用MySQLi

来自分类Dev

如何在课堂上使用依赖注入?

来自分类Dev

configatron单身人士?为什么我不能在课堂上访问configatron

来自分类Dev

如何在站点的Edge浏览器(版本83.0.478.61及更高版本)中启用IE模式?

来自分类Dev

如何测试是否可以从某些浏览器版本访问网站

来自分类Dev

如何访问浏览器的DocumentFragment节点?

来自分类Dev

如何在课堂上传递javascript变量?

来自分类Dev

如何在课堂上获得当前实例?

来自分类Dev

如何在课堂上理解`self.fields`?

来自分类Dev

如何在课堂上设置局部变量

来自分类Dev

AS3:如何在自己的课堂上绘制形状

来自分类Dev

如何在课堂上获得所有属性?

来自分类Dev

如何在课堂上获得当前实例?

来自分类Dev

如何在课堂上使用PDO连接工作

来自分类Dev

我如何在课堂上列出清单,Python

来自分类Dev

如何从课堂上返回char *?

来自分类Dev

如何从课堂上获得琴弦

来自分类Dev

如何从课堂上获得琴弦

来自分类Dev

Dockerfile中的Jboss 5.1-如何在浏览器中访问服务器

来自分类Dev

如何在控制器上访问ViewModel