ASP.NET MVC 5 Filter – Validate Web Browser by Request.UserAgent

ASP.NET MVC 5 Filter – Validate Web Browser by Request.UserAgent

 
   using System;
   using System.Web;
   using System.Web.Mvc;
 
   public class BrowserFilterAttribute : ActionFilterAttribute
   {
      private const string userAgentString = @"< userAgentString >";
 
      public override void OnActionExecuting(ActionExecutingContext filterContext)
      {
         var Request = filterContext.HttpContext.Request;
         var userAgent = Request.UserAgent;
 
         if (!userAgent.Equals(userAgentString))
         {
            filterContext.Result = GetUnSupportBrowserContent(filterContext);
         }
      }
 
      private FileResult GetUnSupportBrowserContent(ActionExecutingContext filterContext)
      {
         string path = filterContext.HttpContext.Server.MapPath("~/Views/Shared/InvalidBrowser.cshtml");
         return new FilePathResult(path, "text/html");
      }
   }
 
 
   [BrowserFilter]
   public class WebController : Controller
   {
      public ActionResult Index()
      {
         … …
 
         return View();
      }
   }