Esempio n. 1
0
        public ActionResult Create(Auction auction)
        {
            if (ModelState.IsValid)
            {
                db.Auctions.Add(auction);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(auction));
        }
Esempio n. 2
0
        public ActionResult Bid(Bid bid)
        {
            var db      = new AuctionsDataContext();
            var auction = db.Auctions.Find(bid.AuctionId);

            if (auction == null)
            {
                ModelState.AddModelError("AuctionId", "Auction not found!");
            }
            else if (auction.CurrentPrice >= bid.Amount)
            {
                ModelState.AddModelError("Amount", "Bid amount must exceed current bid");
            }
            else
            {
                bid.Username = User.Identity.Name;
                auction.Bids.Add(bid);
                auction.CurrentPrice = bid.Amount;
                db.SaveChanges();
            }

            if (!Request.IsAjaxRequest())
            {
                return(RedirectToAction("Auction", new { id = bid.AuctionId }));
            }

            return(Json(new {
                CurrentPrice = bid.Amount.ToString("C"),
                BidCount = auction.BidCount
            }));
        }
Esempio n. 3
0
        public ActionResult Bid(Bid bid)
        {
            var db      = new AuctionsDataContext();
            var auction = db.Auctions.Find(bid.AuctionId);

            if (auction == null)
            {
                ModelState.AddModelError("AuctionId", "Auction Not Found");
            }
            else if (auction.CurrentPrice >= bid.Amount)
            {
                ModelState.AddModelError("Amount", "Bid Amount must exceed current Bid");
            }
            else
            {
                bid.Username = User.Identity.Name;
                auction.Bids.Add(bid);
                auction.CurrentPrice = bid.Amount;
                db.SaveChanges();
            }
            if (!Request.IsAjaxRequest())
            {
                return(RedirectToAction("Auction", new { id = bid.AuctionId }));
            }
            //var httpStatus = ModelState.IsValid ? HttpStatusCode.OK : HttpStatusCode.BadRequest;
            //return new HttpStatusCodeResult(httpStatus);

            return(Json(new
            {
                CurrentPrice = bid.Amount.ToString("C"),
                BidCount = auction.BidCount
            }));
        }
        public ActionResult Bid(Bid bid)
        {
            var db      = new AuctionsDataContext();
            var auction = db.Auctions.Find(bid.AuctionId);

            if (auction == null)
            {
                ModelState.AddModelError("AuctionId", "Auction not found!");
            }
            else if (auction.CurrentPrice >= bid.Amount)
            {
                ModelState.AddModelError("Amount", "New Bid should exceed the current price");
            }
            else
            {
                bid.UserName = User.Identity.Name;
                auction.Bids.Add(bid);
                auction.CurrentPrice = bid.Amount;
                db.SaveChanges();
            }

            //return RedirectToAction("Auction", new { id = bid.AuctionId });

            if (!Request.IsAjaxRequest()) // if not an ajax request, return norml return
            {
                return(RedirectToAction("Auction", new { id = bid.AuctionId }));
            }

            if (ModelState.IsValid)
            {
                return(Json(new
                {
                    CurrentPrice = bid.Amount.ToString("C"),
                    BidCount = auction.BidCount
                }));
            }
            else
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            /*
             * // to return a partial view
             * if (ModelState.IsValid)
             *  return PartialView("_CurrentPricePartial", auction);
             * else
             *  return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
             */

            /* this code is just only for response
             * // if ajax request sent an ajax response
             * var httpStatus = ModelState.IsValid ? HttpStatusCode.OK : HttpStatusCode.BadRequest;
             * return new HttpStatusCodeResult(httpStatus);
             */
        }
Esempio n. 5
0
        public ActionResult Create([Bind(Exclude = "CurrentPrice")] Auction auction)
        {
            if (ModelState.IsValid)
            {
                var db = new AuctionsDataContext();
                db.Auctions.Add(auction);
                db.SaveChanges();

                return(RedirectToAction("Index"));
            }
            return(Create());
        }
Esempio n. 6
0
        // PUT api/Auctions/5
        public HttpResponseMessage PutAuction(long id, Auction auction)
        {
            if (ModelState.IsValid && id == auction.Id)
            {
                db.Entry(auction).State = EntityState.Modified;

                try
                {
                    db.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    return(Request.CreateResponse(HttpStatusCode.NotFound));
                }

                return(Request.CreateResponse(HttpStatusCode.OK));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }
        }
        public ActionResult Create([Bind(Exclude = "CurrentPrice")] Models.Auction auction)
        {
            /* if (string.IsNullOrWhiteSpace(auction.Title))
             * {
             *   ModelState.AddModelError("Title","Title is expected!");
             * }
             * else if (auction.Title.Length < 5 || auction.Title.Length > 200)
             * {
             *   ModelState.AddModelError("Title", "Title should be between 5 and 200 characters");
             * }
             */

            if (ModelState.IsValid)
            {
                //save to data base
                //Response.Write("<script type='text/javascript'> alert('Saved to the database')</script>");
                var db = new AuctionsDataContext();
                db.Auctions.Add(auction);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(Create());
        }