имя типа или пространства имен 'HttpBrowserCapabilitiesBase' не существует в пространстве имен 'System.web' в. net core 2.2 - PullRequest
0 голосов
/ 09 апреля 2020

Я получаю ошибку заголовка, когда я делаю код в .netcore2.2 .

Ниже приведен мой код,

var browser = Request.Browser;
System.Web.HttpBrowserCapabilitiesBase myBrowserCaps = browser;

HttpBrowserCapabilitiesBase в этом ключевом слове отображается ошибка заголовка.

Пока этот код работает отлично ниже .netcore2.2. HttpBrowserCapabilitiesBase - это интерфейс библиотеки DLL System.web ниже .netcore2.2.

Это означает, что обновленная структура net этого пространства имен в настоящее время не существует, Пространство имен - это работа, которую я не получаю.

1 Ответ

0 голосов
/ 10 апреля 2020

В зависимости от того, какая информация вам нужна, вы можете вместо этого посмотреть ее в заголовках (например, Request.Headers["User-Agent"], как показано здесь ), или получить ее, используя библиотеку типа 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;
    ...
    

См. документацию для получения дополнительной информации.

...