示例#1
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var advertisement = await _context.Advertisements
                                .SingleOrDefaultAsync(m => m.ID == id);

            if (advertisement == null)
            {
                return(NotFound());
            }

            var comments = from c in _context.Comments
                           select c;

            comments = comments.Where(c => c.AdvertisementID == id);

            if (comments == null)
            {
                return(NotFound());
            }

            var model = new PutAdViewModel(advertisement, comments);

            return(View(model));
        }
示例#2
0
        public async Task <IActionResult> Edit(int id, [Bind("ID,City,Area,Address,Description,Price,Contact,Date,Studio,OneRoom,TwoRooms,ThreeRooms")] PutAdViewModel putAdViewModel)
        {
            if (id.ToString() != putAdViewModel.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(putAdViewModel);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PutAdViewModelExists(putAdViewModel.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(putAdViewModel));
        }
        public async Task <IActionResult> AddComment(string textButton, int ad_id)
        {
            Comment comment = new Comment();

            comment.UserId          = _userName;
            comment.AdvertisementID = ad_id;
            comment.DateOfComent    = DateTime.Now;
            comment.Like            = 0;
            comment.Dislike         = 0;
            comment.Text            = textButton;
            _context.Add(comment);
            await _context.SaveChangesAsync();

            var comments = from c in _context.Comments
                           select c;

            comments = comments.Where(m => m.AdvertisementID == ad_id);

            var advertisement = await _context.Advertisements
                                .SingleOrDefaultAsync(m => m.ID == comment.AdvertisementID);

            var listModel = comments.ToList();


            var model = new PutAdViewModel(advertisement, comments);

            //return View("~/Views/Advertisements/Details.cshtml", model);

            return(PartialView("~/Views/Shared/_DetailsPartial.cshtml", listModel));
        }
示例#4
0
        // GET: Advertisements
        public async Task <IActionResult> Index()
        {
            var advertisements = _context.Advertisements;
            var model          = new PutAdViewModel(advertisements);

            //model.UserID = _userName;
            return(View("~/Views/Home/Ads.cshtml", model));
        }
示例#5
0
        public async Task <IActionResult> Create([Bind("ID, City,Area,Address,Description,Studio,OneRoom,TwoRooms,ThreeRooms,Price,Contact,Date")] PutAdViewModel putad, IFormFile upload)
        {
            //if (ModelState.IsValid)
            //{
            //    _context.Add(putAdViewModel);
            //    await _context.SaveChangesAsync();
            //    return RedirectToAction("Index");
            //}
            //return View(putAdViewModel);


            if (ModelState.IsValid)
            {
                //if (upload != null && upload.Length > 0)
                //{
                //    //Models.File fileIn = new Models.File();
                //    Data.EfModels.UploadImage Imagein = new UploadImage();
                //    var fileName = ContentDispositionHeaderValue.Parse(upload.ContentDisposition).FileName.Trim('"');

                //    byte[] fileBytes = null;
                //    using (var fileStream = upload.OpenReadStream())
                //    using (var ms = new MemoryStream())
                //    {
                //        fileStream.CopyTo(ms);
                //        fileBytes = ms.ToArray();
                //        //string s = Convert.ToBase64String(fileBytes);
                //        // act on the Base64 data
                //    }


                //    Imagein.Imagename = fileName;
                //    Imagein.ContentType = upload.ContentType;
                //    Imagein.Content = fileBytes;
                //    _context.Add(Imagein);
                //    await _context.SaveChangesAsync();
                //    _context.Add(Imagein);
                //}

                _context.Add(putad);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            //ViewData["ID"] = new SelectList(_context.Users, "ID", "ID", advertisement.ID);
            return(View(putad));
        }
        public async Task <IActionResult> Dislike(int?id)
        {
            var comment = await _context.Comments.SingleOrDefaultAsync(m => m.CommentID == id);

            // var model = new CommentViewModel(comment);
            comment.Dislike++;
            _context.Update(comment);
            await _context.SaveChangesAsync();

            var advertisement = await _context.Advertisements
                                .SingleOrDefaultAsync(m => m.ID == comment.AdvertisementID);

            var comments = from c in _context.Comments
                           select c;

            comments = comments.Where(m => m.AdvertisementID == advertisement.ID);

            var model = new PutAdViewModel(advertisement, comments);

            return(View("~/Views/Advertisements/Details.cshtml", model));
        }