Install-Package Shyjus.BrowserDetector
services.AddBrowserDetection();
在控制器中的使用
public classHomeController : Controller
{
privatereadonly IBrowserDetector browserDetector;
public HomeController(IBrowserDetector browserDetector)
{
this.browserDetector = browserDetector;
}
public IActionResult Index()
{
var browser = this.browserDetector.Browser;
// 按需使用 browser 对象
return View();
}
}
在视图中使用
@inject Shyjus.BrowserDetection.IBrowserDetector browserDetector
<h2>@browserDetector.Browser.Name</h2>
<h3>@browserDetector.Browser.Version</h3>
<h3>@browserDetector.Browser.OS</h3>
<h3>@browserDetector.Browser.DeviceType</h3>
在自定义中间件中的使用
public classMyCustomMiddleware
{
private RequestDelegate next;
public MyCustomMiddleware(RequestDelegate next)
{
this.next = next;
}
public async Task InvokeAsync(HttpContext httpContext, IBrowserDetector browserDetector)
{
var browser = browserDetector.Browser;
if (browser.Type == BrowserType.Edge)
{
await httpContext.Response.WriteAsync("Have you tried the new chromuim based edge ?");
}
else
{
awaitthis.next.Invoke(httpContext);
}
}
}