.net核心2.2中的名称空间“ System.web”中不存在类型或名称空间名称“ HttpBrowserCapabilitiesBase”

.netcore2.2 中执行代码时出现标题错误。

以下是我的代码,

var browser = Request.Browser;
system.web.HttpBrowserCapabilitiesBase myBrowserCaps = browser;

HttpBrowserCapabilitiesBase 在该关键字中显示了标题错误。

尽管此代码在.netcore2.2的下方正常运行, HttpBrowserCapabilitiesBase 是.netcore2.2下的 system.web DLL的接口。

这意味着更新的.net框架不存在该命名空间,现在该命名空间正在工作,而我没有得到。

itdudu 回答:.net核心2.2中的名称空间“ System.web”中不存在类型或名称空间名称“ HttpBrowserCapabilitiesBase”

根据您需要的信息,您可以改为在标头中查找信息(例如Request.Headers["User-Agent"],如here所示),或使用类似Device Detection的库获取它。

编辑:这是一个使用ASP.NET Core Detection库获取设备类型信息的教程:

  • 安装Wangkanai.Detection NuGet软件包。
  • 添加到ConfigureServices中的Startup.cs方法中:

    services.AddDetection();
    
  • 在控制器中注入:IDeviceResolver deviceResolver

  • ...,并通过以下方式获取设备信息:deviceResolver.Device.Type,例如:

    var isMobile = deviceResolver.Device.Type == DeviceType.Mobile;
    var isDesktop = deviceResolver.Device.Type == DeviceType.Desktop;
    ...
    

有关更多信息,请参见documentation

本文链接:https://www.f2er.com/2475503.html

大家都在问