public async Task <ActionResult <Listing> > CreateListing([FromForm] ListingCreateVM vm) { long size = vm.Images.Sum(f => f.Length); var city = await _context.Cities.SingleOrDefaultAsync(x => x.Name == vm.CityName); var user = await _context.Users.SingleOrDefaultAsync(x => x.Id == vm.UserId); var category = await _context.Categories.SingleOrDefaultAsync(x => x.CategoryName == vm.CategoryName); var listing = new Listing(vm, city, user, category); await _context.AddAsync(listing); foreach (var image in vm.Images) { if (image.Length > 0) { using (var memoryStream = new MemoryStream()) { await image.CopyToAsync(memoryStream); var arrImg = memoryStream.ToArray(); var img = new ListingImage(arrImg, listing); //listing.ListingImages.Add(img); await _context.AddAsync(img); } } } await _context.SaveChangesAsync(); return(Ok(new { count = vm.Images.Count, size })); }
public Listing(ListingCreateVM vm, City city, User user, ICollection <ListingImage> listingImages) { //UserId = vm.UserId; Title = vm.Title; Description = vm.Description; Price = vm.Price; Description = vm.Description; City = city; User = user; ListingImages = listingImages; }
public Listing(ListingCreateVM vm, City city, User user, Category category) { //UserId = vm.UserId; Title = vm.Title; Description = vm.Description; Price = vm.Price; Description = vm.Description; City = city; User = user; Category = category; }
public Task <Guid> CreateListing(ListingCreateVM vm) { throw new NotImplementedException(); }