我想知道是否使用HttpBrowserCapablilties从HttpContext.Request.Browser获取是我检查请求是来自Windows桌面计算机而不是移动设备的最佳方式。
请参阅下文,了解我如何使用它。
public static bool IsWindowsDesktop(this HttpBrowserCapabilities browser)
{
return string.Equals(browser.Platform, "WinNT") && browser.IsMobileDevice;
}
答案 0 :(得分:1)
简短的回答是“否”。有关更多详细信息,请参见SO,但是HttpBrowserCapabilities基于您的框架更新以及存储在其中的内容:
%SystemRoot%\ Microsoft.NET \ Framework [version] \ Config \ Browsers
请注意,目前建议的51 Degrees库存在严重的设计缺陷。当您尝试检测UA是否可移动时,它将为每个请求引发一个异常。我们已经与51 Degrees进行了讨论,他们将在其4.x版本中修复该问题。在那之前,我们必须忍受:
与其他第三方库相比,您可能会有更好的运气。