0

我有一个登录表单,它要求输入用户名、密码、令牌ID(每个用户都知道他的令牌,他们得到它来访问 API)。我希望能够获取他们输入的令牌 API 并将其传递给 /Home/Index。这样做的最佳方法是什么?

4

1 回答 1

1

好的,首先你有一个用户将进入的视图UserNamePassword所以TokenId让视图有一个如下所示的模型。

public class LoginModel{

public string UserName{get; set;} 
public string Password{get; set;}
public string TokenId{get; set;}
}

从视图中您可以返回这个模型,它将保存所有这些值。

现在,当您需要将这些值传递给您时,Home/Index您可以将表单提交给Index操作。

public ActionResult Index(LoginModel model)
{
 string gotcha = model.TokenId;
}

但是,如果您想将表单提交给不同的操作,例如控制器“登录”,然后将此值传递给不同的控制器,您可以执行类似的操作。

// defined in Login Controller
public ActionResult Index(LoginModel model)
{
 TempData["TokenId"] = model.TokenId;
 return RedirectToAction("Dashboard","Account");
}

// defined in Account Controller
public ActionResult Dashboard()
{
 string gotVal = TempData["TokenId"]

}

还有更多方法可以在两个动作之间传递值,请参阅此链接

于 2012-08-26T15:46:51.027 回答