public IActionResult Create(FoodTruck newTruck) { if (ModelState.IsValid == false) { return(View("New")); // display error messages } // associate newTruck with the logged in user // this user id could also have been passed in as a URL param or a hidden input which would auto assign the id. URL param would have to be named userId for auto assign to work newTruck.UserId = (int)uid; db.FoodTrucks.Add(newTruck); db.SaveChanges(); return(RedirectToAction("All")); }
public void Execute(RecipeCreateCommand command) { var validator = new RecipeCreateValidator(); var results = validator.Validate(command); if (results.IsValid) { var recipe = new Recipe(); recipe.Id = command.Id; recipe.Name = command.Name; recipe.Description = command.Description; recipe.SetCreated(_userSession); recipe.SetUpdated(_userSession); _context.Recipes.Add(recipe); foreach (var ingrediant in command.Ingrediants) { ingrediant.SetCreated(_userSession); ingrediant.SetUpdated(_userSession); } _context.Ingrediants.AddRange(command.Ingrediants); _context.SaveChanges(); return; } }
public IActionResult Register(User newUser) { if (ModelState.IsValid == false) { return(View("Index")); // to display error messages } if (db.Users.Any(user => user.Email == newUser.Email)) { ModelState.AddModelError("Email", "is taken"); return(View("Index")); // to display error messages } // hash pw PasswordHasher <User> hasher = new PasswordHasher <User>(); newUser.Password = hasher.HashPassword(newUser, newUser.Password); db.Users.Add(newUser); db.SaveChanges(); HttpContext.Session.SetInt32("UserId", newUser.UserId); HttpContext.Session.SetString("FullName", newUser.FullName()); return(RedirectToAction("All", "FoodTruck")); }
public void Setup() { // Setup DB conmtext and provider Mock <ILogger <FoodTruckProvider> > loggerMock = new Mock <ILogger <FoodTruckProvider> >(); foodTruckProviderLogger = loggerMock.Object; var dbOptions = new DbContextOptionsBuilder <FoodTruckContext>() .UseInMemoryDatabase(databaseName: "FoodTrucks") .Options; foodTruckContext = new FoodTruckContext(dbOptions); foodTruckProvider = new FoodTruckProvider(foodTruckProviderLogger, foodTruckContext); // Seed test data CsvParserOptions csvParserOptions = new CsvParserOptions(true, ','); var csvParser = new CsvParser <Core.Models.FoodTruck>(csvParserOptions, new CsvFoodTruckMapping()); var records = csvParser.ReadFromFile("Resources/Mobile_Food_Facility_Permit.csv", Encoding.UTF8).ToList(); foreach (var record in records) { if (record.IsValid) { foodTruckContext.FoodTrucks.Add(record.Result); } } foodTruckContext.SaveChanges(); }
/// <summary> /// Parse and store the data records from the food truck CSV /// </summary> /// <param name="context"></param> private void InitData(FoodTruckContext context) { CsvParserOptions csvParserOptions = new CsvParserOptions(true, ','); var csvParser = new CsvParser <Core.Models.FoodTruck>(csvParserOptions, new CsvFoodTruckMapping()); var records = csvParser.ReadFromFile("Resources/Mobile_Food_Facility_Permit.csv", Encoding.UTF8).ToList(); foreach (var record in records) { if (record.IsValid) { context.FoodTrucks.Add(record.Result); } else { Log.Information($"Invalid record: {record.Error}"); } } context.SaveChanges(); }