C# 如何在asp.net web api中检测操作系统、浏览器、设备名称等设备信息?

C# 如何在asp.net web api中检测操作系统、浏览器、设备名称等设备信息?,c#,asp.net,asp.net-web-api,C#,Asp.net,Asp.net Web Api,我正在创建一个ASP.NET Web API。 我想检测web服务消费者的设备信息。 目前,我正在尝试使用Request.Headers.UserAgent获取设备相关信息 public void XYZ(int a, int b) { var x = Request.Headers.UserAgent; } 但是无法获得正确的信息。您是先生 public void XYZ(int a, int b) { var

我正在创建一个ASP.NET Web API。 我想检测web服务消费者的设备信息。 目前,我正在尝试使用Request.Headers.UserAgent获取设备相关信息

public void XYZ(int a, int b)
{            
        var x = Request.Headers.UserAgent;
}
但是无法获得正确的信息。

您是先生

public void XYZ(int a, int b)
{            
        var x = Request.Headers.UserAgent;
}
public static void Main(string[] args)
{
    IRuntimeEnvironment runtime = PlatformServices.Default.Runtime;
    IApplicationEnvironment env = PlatformServices.Default.Application;
    Console.WriteLine($@"
IApplicationEnvironment:
        Base Path:      {env.ApplicationBasePath}
        App Name:       {env.ApplicationName}
        App Version:    {env.ApplicationVersion}
        Runtime:        {env.RuntimeFramework}
IRuntimeEnvironment:
        OS:             {runtime.OperatingSystem}
        OS Version:     {runtime.OperatingSystemVersion}
        Architecture:   {runtime.RuntimeArchitecture}
        Path:           {runtime.RuntimePath}
        Type:           {runtime.RuntimeType}
        Version:        {runtime.RuntimeVersion}");
}
是的,先生

public static void Main(string[] args)
{
    IRuntimeEnvironment runtime = PlatformServices.Default.Runtime;
    IApplicationEnvironment env = PlatformServices.Default.Application;
    Console.WriteLine($@"
IApplicationEnvironment:
        Base Path:      {env.ApplicationBasePath}
        App Name:       {env.ApplicationName}
        App Version:    {env.ApplicationVersion}
        Runtime:        {env.RuntimeFramework}
IRuntimeEnvironment:
        OS:             {runtime.OperatingSystem}
        OS Version:     {runtime.OperatingSystemVersion}
        Architecture:   {runtime.RuntimeArchitecture}
        Path:           {runtime.RuntimePath}
        Type:           {runtime.RuntimeType}
        Version:        {runtime.RuntimeVersion}");
}
您可以在ASP.NET中为此使用HttpBrowserCapabilities类。只需获取您收到的请求的Browser属性

HttpBrowserCapabilities capability= Request.Browser;
var BrowserName = capability.Browser;
var version = capability.Version;
var platform = capability.Platform;
HttpBrowserCapabilities属于System.Web命名空间

希望这有帮助。

您可以在ASP.NET中使用HttpBrowserCapabilities类来实现这一点。只需获取您收到的请求的Browser属性

HttpBrowserCapabilities capability= Request.Browser;
var BrowserName = capability.Browser;
var version = capability.Version;
var platform = capability.Platform;
Request.Headers["User-Agent"]
HttpBrowserCapabilities属于System.Web命名空间

希望这有帮助

Request.Headers["User-Agent"]
为您提供用户代理信息。通常,该值如下所示:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36
为您提供用户代理信息。通常,该值如下所示:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36

Request.Browser在ASP.NET Web API应用程序中不可用。我想你说的是ASP.NET Web应用程序。我想在我的ASP.NET Web API应用程序中检测消费者的设备信息。ASP.NET Web API应用程序中没有Request.Browser。我想你说的是ASP.NET Web应用程序。我想在我的ASP.NET Web API应用程序中检测消费者的设备信息。我需要在ASP.NET Web API中检测消费者/请求者的设备信息,而不是在控制台应用程序中。@user1780538尽管这看起来像是控制台应用程序,实际上是如何访问.Net核心Web API项目中的变量。我需要在ASP.Net Web API中检测设备信息消费者/请求者,而不是在控制台应用程序中。@user1780538虽然这看起来像控制台应用程序,但实际上是如何访问.Net核心Web API项目中的变量。