我目前遇到问题,我的RedirectToAction
重定向到生成的控制器中包含的Dispose()
方法。我不确定为什么它会采用这种方法而不是我指定的方法。我要做的是在我的一个模型中添加一个条目(OwnGame
,这是成功的)然后我想重定向到一个动作结果,删除前一个模型/表中的那些条目({{ 1}})一旦它们被添加到我提到的模型/数据库表中。下面是第一个添加重定向的操作结果。
Cart
如果它是相关的,我已经包含了我想要重定向到的方法,但它失败了。
//GET: OwnGame/Create
[CustomAuthorize(Roles = "Member")]
public ActionResult Create(string userEmail)
{
List<int> GameIDs = new List<int>();
GameIDs = (List<int>)TempData["CheckoutGameIDs"];
ViewBag.Email = userEmail;
for (int i = 0; i < GameIDs.Count; i++)
{
ViewBag.GameID = GameIDs[i];
OwnGame ownedGames = new OwnGame();
ownedGames.Email = userEmail;
ownedGames.GameID = GameIDs[i];
db.OwnGames.Add(ownedGames);
db.SaveChanges();
}
return RedirectToAction("EmptyCart");
}
此外,我没有对public ActionResult EmptyCart(string userEmail)
{
var cartItems = db.Carts.Where(o => o.Email.Contains(userEmail));
foreach (Cart singleItem in cartItems)
{
Cart cartSingleItem = db.Carts.Find(singleItem.CartID);
db.Carts.Remove(cartSingleItem);
}
db.SaveChanges();
return RedirectToAction("Index", new { userEmail = userEmail });
}
方法做任何事情,这是标准的。所有这一切都应该在同一个控制器中进行。
答案 0 :(得分:2)
因为=ISERROR(K1)
有一个参数,当您从EmptyCart
调用它时必须指定它的值:
RedirectToAction
或者作为替代方案,您可以设置该参数optional:
return RedirectToAction("EmptyCart", new { userEmail = "" });