private bool RedirectIfRecordId(string segment) { if (!segment.StartsWith("_id")) { return(true); } //Not a record id, yay! int id; if (!int.TryParse(segment.Substring(3), out id)) { return(true); } var company = DcdReader.GetCompanyByRecordId(id); if (!(company?.RecordNumber).HasContent()) { return(true); } if (!HttpContext.Current.Response.IsRequestBeingRedirected) { HttpContext.Current.Response.Redirect($"/companies/{company.RecordNumber}", true); } return(false); }
public Company GetCompanyByRecordId(int recordId) { return(_cache.GetFromCache($"DCDManager:GetCompanyByRecordId:{recordId}", _timeSpan, () => _reader.GetCompanyByRecordId(recordId))); }