public override string GetShortUrl() { var urlCheck = GetDataFromCache(); if (urlCheck != null) { return(urlCheck.KeyCode); } var newObj = new TopLevelModel() { Url = OriginalUrl, DateCreated = DateTime.UtcNow }; newObj = _repo.Add(newObj); if (newObj != null) { var keyCode = KeyEncode((int)newObj.Id); SetCacheEntry(StrategyConstants.SingleLayerCache, AddDataToCache(new SingleLayerCacheModel { Id = newObj.Id, KeyCode = keyCode, Url = Url })); return(keyCode); } return(ErrorMessagesConstants.FailToGenerate); }
public TopLevelModel Add(TopLevelModel objNew) { using (SqlConnection connection = new SqlConnection(_connectionString)) { String query = "INSERT INTO dbo.TopLevel (url,datecreated) " + "VALUES (@url,@datecreated); SELECT SCOPE_IDENTITY()"; using (SqlCommand command = new SqlCommand(query, connection)) { command.Parameters.AddWithValue("@url", objNew.Url); command.Parameters.AddWithValue("@datecreated", objNew.DateCreated); connection.Open(); objNew.SetId(command.ExecuteScalar()); // Check Error if (objNew.Id < 0) { return(null); } } } return(objNew); }