コード例 #1
0
 public void AddModel(string key, UrlModelDto model)
 {
     if (!HasKey(key))
     {
         Cache[key] = model;
     }
 }
コード例 #2
0
        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));
        }
コード例 #3
0
        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);
            }
        }
コード例 #4
0
 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("");
     }
 }