0

ログインフォームがあり、UserName、Password、TokenID を要求します (各ユーザーは自分のトークンを知っており、API にアクセスするためにトークンを取得します)。彼らが入力した Token API を取得して、/Home/Index に渡すことができるようにしたいと考えています。それを行う最善の方法は何ですか?

4

1 に答える 1

1

わかりました。まず、ユーザーが入力するビューがあるのでUserName、ビューPasswordTokenId以下に示すようなモデルを持たせます。

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"]

}

2 つのアクション間で値を渡す方法は他にもあります。このリンクを参照してください。

于 2012-08-26T15:46:51.027 に答える