Как получить имя браузера в .net версии 8?C#

Место общения программистов C#
Anonymous
Как получить имя браузера в .net версии 8?

Сообщение Anonymous »

Я хочу сохранить имя браузера пользователя, заполняющего форму.
Я пытался использовать HttpContextAccessor, но не смог получить «User-Agent». Как решить эту проблему?

Код: Выделить всё

    public string GetBrowserDetails()
{
var browserDetails = string.Empty;
HttpRequest request = _httpContextAccessor.HttpContext.Request;

if (request.Headers.ContainsKey("User-Agent"))
{
var userAgent = request.Headers["User-Agent"].ToString();
// Log or debug the userAgent value to ensure it is not empty
Console.WriteLine($"User-Agent: {userAgent}");

var browser = string.Empty;
var version = string.Empty;

if (Regex.IsMatch(userAgent, @"Edge\/\d+"))
{
browser = "Edge";
version = Regex.Match(userAgent, @"Edge\/(\d+\.\d+)").Groups[1].Value;
}
else if (Regex.IsMatch(userAgent, @"Edg\/\d+"))
{
browser = "Edge";
version = Regex.Match(userAgent, @"Edg\/(\d+\.\d+)").Groups[1].Value;
}

else
{
browser = "Unknown";
version = "Unknown";
}

browserDetails = $"Browser: {browser} Version: {version}{Environment.NewLine}{Environment.NewLine}";
}
else
{
Console.WriteLine("User-Agent header not found");
}

return browserDetails;
}
вот метод, который я использовал, я не смог войти в его условие if, поскольку «User-Agent» становится пустым. Как решить эту проблему. Если кто-нибудь знает, как получить информацию о браузере другим способом, сообщите мне.

Подробнее здесь: https://stackoverflow.com/questions/786 ... n-8-aspire

Вернуться в «C#»