public void AddModel(string key, UrlModelDto model) { if (!HasKey(key)) { Cache[key] = model; } }
public RedirectResult RedirectLink(string code) { if (code == null) { return(Redirect("NotFound")); } UrlHandler urlHandler = new UrlHandler(); UrlModelDto url = urlHandler.GetUrlAddress(code); return(Redirect(url != null ? url.MainLink : code)); }
public string GenerateCode(string url) { UrlHandler handler = new UrlHandler(); string ip = Request.UserHostAddress; UrlModelDto dtoModel = new UrlModelDto() { MainLink = url, CreateIp = ip }; string code = handler.GenerateCode(dtoModel); if (handler.HasException) { var message = string.Format("Error in Server"); HttpError err = new HttpError(message); return(JsonConvert.SerializeObject(err)); } else { return(code); } }
public string GenerateCode(UrlModelDto dto) { try { string code = HashHandler.Hash(dto.MainLink) + GetLastUrlAddressId().ToString().PadLeft(4, '0'); UrlModel model = new UrlModel() { MainLink = dto.MainLink, ShortLink = code, ViewCount = 0, CreateIp = dto.CreateIp }; if (DataAccess.Insert(model) <= 0) { throw new Exception("خطا در سرور"); } return(code); } catch (Exception ex) { AddException(ex); return(""); } }