public IActionResult Add(CatInputModel model) { var cat = this.mapper.Map <Cat>(model); this.catsService.Add(cat); return(this.Redirect("/")); }
public IActionResult Add(CatInputModel model) { var cat = new Cat { Name = model.Name, Age = model.Age, Breed = model.Breed, ImageUrl = model.ImageUrl }; this.Db.Cats.Add(cat); this.Db.SaveChanges(); return(this.Redirect("/")); }
public async Task <ActionResult <Cat> > PostCat(CatInputModel cat) { if (!ModelState.IsValid) { return(BadRequest()); } var _cat = new Cat() { Lives = 9, Name = cat.Name }; _context.Cats.Add(_cat); await _context.SaveChangesAsync(); return(CreatedAtAction("GetCat", new { id = _cat.Id }, _cat)); }
public async Task Test1() { var optionsBuilder = new DbContextOptionsBuilder <MeowtownContext>(); optionsBuilder.UseInMemoryDatabase("Cats"); var dbContext = new MeowtownContext(optionsBuilder.Options); var controller = new CatsController(dbContext); var cat = new CatInputModel() { Name = "Piet" }; var result = await controller.PostCat(cat); var createdAtActionResult = result.Result as CreatedAtActionResult; var resultCat = createdAtActionResult.Value as Cat; Assert.AreEqual(cat.Name, resultCat.Name); }
public async Task <IActionResult> CreatePrivateCat([FromForm] CatInputModel model) { await this.catsService.AddCat(model); return(Ok()); }
public async Task AddCat(CatInputModel input) { var fileName = ImageUploader.UploadFile(input.File, "catImages"); var cat = new Cat() { Name = input.Name, Age = input.Age, Birthday = input.Birthday, Gender = (Gender)input.Gender, Breed = (Breed)input.Breed, Color = (Color)input.Color, ProfileImage = fileName, }; await this.db.Cats.AddAsync(cat); await this.db.SaveChangesAsync(); Male father = null; Female mother = null; if (!string.IsNullOrEmpty(input.FatherName) || !string.IsNullOrWhiteSpace(input.FatherName)) { var fatherCat = await this.db.Males.FirstOrDefaultAsync(c => c.Name == input.FatherName); if (fatherCat == null) { var catNotFather = await this.db.Cats.FirstOrDefaultAsync(c => c.Name == input.FatherName); this.db.Cats.Remove(catNotFather); father = new Male() { Name = catNotFather.Name, Age = catNotFather.Age, Birthday = catNotFather.Birthday, Gender = catNotFather.Gender, Breed = catNotFather.Breed, Color = catNotFather.Color, FatherId = catNotFather.FatherId, Father = catNotFather.Father, MotherId = catNotFather.MotherId, Mother = catNotFather.Mother, ProfileImage = catNotFather.ProfileImage, }; await this.db.Males.AddAsync(father); await this.db.SaveChangesAsync(); cat.FatherId = father.CatId; cat.Father = father; father.Children.Add(cat); } else { cat.FatherId = fatherCat.CatId; cat.Father = fatherCat; fatherCat.Children.Add(cat); } } if (!string.IsNullOrEmpty(input.MotherName) || !string.IsNullOrWhiteSpace(input.MotherName)) { var motherCat = await this.db.Females.FirstOrDefaultAsync(c => c.Name == input.MotherName); if (motherCat == null) { var catNotMother = await this.db.Cats.FirstOrDefaultAsync(c => c.Name == input.MotherName); this.db.Cats.Remove(catNotMother); mother = new Female() { Name = catNotMother.Name, Age = catNotMother.Age, Birthday = catNotMother.Birthday, Gender = catNotMother.Gender, Breed = catNotMother.Breed, Color = catNotMother.Color, FatherId = catNotMother.FatherId, Father = catNotMother.Father, MotherId = catNotMother.MotherId, Mother = catNotMother.Mother, ProfileImage = catNotMother.ProfileImage, }; await this.db.Females.AddAsync(mother); await this.db.SaveChangesAsync(); cat.MotherId = mother.CatId; cat.Mother = mother; mother.Children.Add(cat); } else { cat.MotherId = motherCat.CatId; cat.Mother = motherCat; motherCat.Children.Add(cat); } } await this.db.SaveChangesAsync(); }