Je travaille sur MVC asp.net.
Ceci est mon action de contrôleur:
public ActionResult ingredientEdit(int id) {
ProductFormulation productFormulation = db.ProductFormulation.Single(m => m.ID == id);
return View(productFormulation);
}
//
// POST: /Admin/Edit/5
[HttpPost]
public ActionResult ingredientEdit(ProductFormulation productFormulation) {
productFormulation.CreatedBy = "Admin";
productFormulation.CreatedOn = DateTime.Now;
productFormulation.ModifiedBy = "Admin";
productFormulation.ModifiedOn = DateTime.Now;
productFormulation.IsDeleted = false;
productFormulation.UserIP = Request.ServerVariables["REMOTE_ADDR"];
if (ModelState.IsValid) {
db.ProductFormulation.Attach(productFormulation);
db.ObjectStateManager.ChangeObjectState(productFormulation, EntityState.Modified);
db.SaveChanges();
**return RedirectToAction("ingredientIndex");**
}
return View(productFormulation);
}
Je veux passer id à ingredientIndex
action. Comment puis-je faire ceci?
Je veux utiliser cet identifiant public ActionResult ingrédient Edit (int id) qui provient d'une autre page. en fait je n'ai pas id
en deuxième action, suggérez-moi ce que je devrais faire.
return RedirectToAction("IngredientIndex", new { id = id });
Mettre à jour
Tout d'abord, je renommerais IngredientIndex et IngredientEdit en index et en édition et les placerais dans IngredientsController, au lieu de AdminController, vous pouvez avoir un domaine nommé Admin si vous le souhaitez.
//
// GET: /Admin/Ingredients/Edit/5
public ActionResult Edit(int id)
{
// Pass content to view.
return View(yourObjectOrViewModel);
}
//
// POST: /Admin/Ingredients/Edit/5
[HttpPost]
public ActionResult Edit(int id, ProductFormulation productFormulation)
{
if(ModelState.IsValid()) {
// Do stuff here, like saving to database.
return RedirectToAction("Index", new { id = id });
}
// Not valid, show content again.
return View(yourObjectOrViewModel)
}
Essayez de cette façon:
return RedirectToAction("IngredientIndex", new { id = productFormulation.id });
Pourquoi ne pas faire ça?
return RedirectToAction("ingredientIndex?Id=" + id);