protected override bool Execute(T ruleContext) { var httpRequest = new HttpContextWrapper().Request; var browserCapabilitiesService = new BrowserCapabilitiesService(new HttpContextWrapper().Request); bool result; switch (DeviceTypeName) { case "Mobile": result = browserCapabilitiesService.IsMobileDevice; break; case "Tablet": result = browserCapabilitiesService.IsTabletDevice; break; case "Console": result = browserCapabilitiesService.GetBoolProperty("IsConsole"); break; case "eReader": result = browserCapabilitiesService.GetBoolProperty("IsEReader"); break; case "Media Hub": result = browserCapabilitiesService.GetBoolProperty("IsMediaHub"); break; case "Small Screen": result = browserCapabilitiesService.GetBoolProperty("IsSmallScreen"); break; case "TV": result = browserCapabilitiesService.GetBoolProperty("IsTV"); break; default: result = false; break; } return(result); }