public ActionResult Index(string search = "") { var userAgents = string.IsNullOrWhiteSpace(search) ? _userAgentRepository.GetAll() : _userAgentRepository.Find(search); ViewBag.SearchString = search; return(View(userAgents)); }
private Guid?GetUserAgentId(string userAgent) { userAgent = (userAgent ?? string.Empty).Trim(); var allUserAgents = _userAgentRepository.GetAll() .Where(ua => !string.IsNullOrEmpty(ua.Identifier)) .Select(ua => new UserAgentInfo( userAgentId: ua.Id, identifier: ua.Identifier, matchType: ua.MatchType )).ToList(); var dbUserAgent = allUserAgents.FirstOrDefault(u => u.MatchType == MatchType.Begins_With && userAgent.StartsWith(u.Identifier)); if (dbUserAgent != null) { return(dbUserAgent.UserAgentId); } dbUserAgent = allUserAgents.FirstOrDefault(u => u.MatchType == MatchType.Ends_With && userAgent.EndsWith(u.Identifier)); if (dbUserAgent != null) { return(dbUserAgent.UserAgentId); } dbUserAgent = allUserAgents.FirstOrDefault(u => u.MatchType == MatchType.Contains && userAgent.Contains(u.Identifier)); return(dbUserAgent?.UserAgentId); }
public List <UserAgent> GetAll() { return(_lazyCache.GetOrAddUserAgents(() => _internalRepository.GetAll())); }