C#中的浏览器检测(.Net)

时间:2015-02-03 17:53:48

标签: c# asp.net .net browser-detection

我今天在C#的土地上。 我正在尝试编写一个接受用户代理字符串的函数,并返回一个至少为我提供浏览器名称和版本的对象。所以我尝试了this answer,但显然我不知道可以访问HttpBrowserCapabilities。它告诉我找不到类型或命名空间名称(是的,即使我使用System.Web添加,它仍然没有显示,或者当我使用System.Web键入时。它不会弹出,所以它是显然不存在)。

我正在使用.net 3.5,但该类的文档显示它甚至存在于3.5中,因此我不确定发生了什么。我可以访问browscap文件 - ini或xml。我是否必须从头开始写这个?

修改:我修复了引用问题。但Chrome被报道为AppleMAC-Safari 5.0。我想知道我是否需要一种完全不同的方法。 PHP使用相同的ini文件来计算它。

3 个答案:

答案 0 :(得分:2)

添加using不会自动导入DLL。所有using都允许你不写:

System.Web.HttpClient //Or whatever

到处都是,而是使用HttpClient

在项目可以使用任何类之前,您需要向项目中添加引用到<{1}}。

答案 1 :(得分:1)

您的源文件中是否有using System.Web;声明?

这里有一个提示:如果您使用的是Visual Studio,并且您在项目中引用了System.Web.dll,如果您键入类型的名称并按Ctrl-.它将为您提供一个弹出菜单,用于将命名空间引用添加到源文件中。

答案 2 :(得分:0)

您是否在ObjectBrowser中看到它(假设您使用的是Visual Studio)?今天早上我找到了命名空间(我在4.5上认定了 - 但文档显示它自3.5及更早版本开始存在)

Object Browser for System.Web