是否使用HttpBrowserCapabilities最佳操作系统和移动检测练习?

时间:2018-03-05 07:51:28

标签: c# ihttphandler httpbrowsercapabilities

我想知道是否使用HttpBrowserCapablilties从HttpContext.Request.Browser获取是我检查请求是来自Windows桌面计算机而不是移动设备的最佳方式。

请参阅下文,了解我如何使用它。

public static bool IsWindowsDesktop(this HttpBrowserCapabilities browser)
    {
        return string.Equals(browser.Platform, "WinNT") && browser.IsMobileDevice;
    }

1 个答案:

答案 0 :(得分:1)

简短的回答是“否”。有关更多详细信息,请参见SO,但是HttpBrowserCapabilities基于您的框架更新以及存储在其中的内容:

  

%SystemRoot%\ Microsoft.NET \ Framework [version] \ Config \ Browsers

请注意,目前建议的51 Degrees库存在严重的设计缺陷。当您尝试检测UA是否可移动时,它将为每个请求引发一个异常。我们已经与51 Degrees进行了讨论,他们将在其4.x版本中修复该问题。在那之前,我们必须忍受:

enter image description here

与其他第三方库相比,您可能会有更好的运气。