コード例 #1
0
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            _context.Attach(Advertisement).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!AdvertisementExists(Advertisement.Id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(RedirectToPage("./Index"));
        }
コード例 #2
0
        public async Task <IActionResult> OnPostAsync(Advertisement advertisement, IFormFile uploadImage,
                                                      [FromServices] IHostingEnvironment hostingEnvironment)
        {
            if (ModelState.IsValid)
            {
                // Save File
                if (uploadImage != null && uploadImage.Length > 0)
                {
                    var webRoot = hostingEnvironment.WebRootPath;
                    advertisement.ImageUrl = $"image-{DateTime.UtcNow.ToString("yyyyMMdd-HHmmss")}.jpg";
                    // It will save in the wwwroot/images library.
                    var filePath = Path.Combine(webRoot, "images", advertisement.ImageUrl);
                    using (var stream = new FileStream(filePath, FileMode.Create))
                    {
                        await uploadImage.CopyToAsync(stream);
                    }
                }
                // Read of the city based on the zip code.
                var city = _context.Set <City>().Single(c => c.Zip == advertisement.City.Zip);
                advertisement.City = city;
                // Save the advertisement data into the DB.
                _context.Add(advertisement);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(Page());
        }
コード例 #3
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Advertisement = await _context.Advertisement.FindAsync(id);

            if (Advertisement != null)
            {
                _context.Advertisement.Remove(Advertisement);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }