1

私は mvc で起動し、簡単なログイン手順を設計しています。ユーザー名とパスワードの2つの入力を含むログイン画面が表示されます。しかし、どうやら入力の値をビューからコントローラーに渡す方法を取得できないようです。私はかみそりを使用しています。ここに私のスニペットがあります。

<table>
    <tr>
        <td>
            UserName:
        </td>
        <td>
            @Html.TextBox("userName")
        </td>
    </tr>
        <tr>
        <td>
            Password
        </td>
        <td>
            @Html.Password("Password")
        </td>
    </tr>
    <tr>
        <td colspan="2">
            @Html.ActionLink("login", "SignIn")
        </td>
    </tr>
</table>

そして私のコントローラはこのように見えます.(私はアクションリンクを使ってコントローラにリダイレクトすることができます.値を渡すだけです.)

public ActionResult SignIn()
{
    //string userName = Request["userName"];
    return View("Home");
}
4

3 に答える 3

0

テーブルを Form でラップします。

    @using (Html.BeginForm("SignIn", "controllerName", FormMethod.POST))
{
<table>
...
</table>
<input type="submit" value="Sign in" />
}

そしてコントローラーに次のように書きます:

[HttpPost]
public ActionResult SignIn(string userName, string Password)
{
 //sign in and redirect to home page
}
于 2012-09-27T09:55:04.463 に答える
0

意見:

@using (Html.BeginForm("SignIn", "Controller", FormMethod.Post, new { id = "form1" }))
{
<table>
<tr>
    <td>
        UserName:
    </td>
    <td>
        @Html.TextBox("userName")
    </td>
</tr>
    <tr>
    <td>
        Password
    </td>
    <td>
        @Html.Password("Password")
    </td>
</tr>
<tr>
    <td colspan="2">
        <input type="submit" value="login" name="login" />
    </td>
</tr>
</table>
}

モデル:

public string userName{get;set;}
public string Password{get;set;}

コントローラ:

[HttpPost]
 public ActionResult SignIn(Model obj)
 {
  //sign in and redirect to home page
   string userName = obj.username;
   string password = obj.password;
 }

それはあなたの助けになるかもしれません。

于 2014-01-31T20:00:06.187 に答える