我有一个ShopController和一个操作方法,我称之为CheckOut。我在操作方法之前有[授权],但是如果我希望用户在成功登录后继续到另一个控制器(如客户控制器和创建视图(,以便客户可以将地址和其他信息添加到表单中,该怎么办?
一种选择可能是在 ShopController 中使用表单创建一个新视图,但我想这不是一个好的选择!?
一种选择可能是创建一个新视图,其中包含一个表单 商店控制器,但我想这不是一个好的选择!?
不。这是您想要的方式。为应用程序的不同功能/逻辑部分创建操作方法/控制器。在这种情况下,读取地址是一项单独的功能,因此应属于单独的控制器操作方法。
您可以创建一个新CustomerController
并在该操作方法中添加一个CreateAddress
操作方法(和视图(,并在对用户进行身份验证的操作方法(登录?(中,根据需要使用RedirectToAction
方法向用户发送新视图。
public ActionResult Login(string userName,string password)
{
// do your credential verification logic here
return RedirectToAction("CreateAddress","CustomerController");
}