Example #1
0
        public async Task <VisitorResponseDto> RegisterVisitor(VisitorRequestDto visitorRequest)
        {
            Domain.Entities.ShortUrl shortUrl = _shortUrlRepository.GetByFilter(x => x.ShortURL == visitorRequest.ShortUrl).Result.FirstOrDefault();

            var newVisitor = new Domain.Entities.Visitor
            {
                Date      = DateTime.Now,
                IsDeleted = false,
                Ip        = visitorRequest.Ip,
                UserAgent = visitorRequest.UserAgent,
                ShortUrl  = shortUrl
            };

            await _visitorRepository.Create(newVisitor);

            try
            {
                _visitorRepository.Commit();

                return(new VisitorResponseDto
                {
                    Message = "Visitor registered",
                    Success = true
                });
            }
            catch (Exception ex)
            {
                _visitorRepository.Rollback();
                throw ex;
            }
        }
Example #2
0
        public ActionResult Create([Bind(Include = "VisitorId,LastName,FirstName,Gender,Age,Telephone,Email,Feedback")] Visitor visitor)
        {
            if (ModelState.IsValid)
            {
                db.Create(visitor);
                db.Save();
                return(RedirectToAction("Index"));
            }

            return(View(visitor));
        }