2016-06-16 18 views
1

私は、次のHTMLはネットコアRC2 MVCパラメータは、VSのコードでは、.NETのコアRC2を使用して、コントローラ

<form asp-controller="Home" asp-action="Connexion" method="post"> 
    <div class="col-md-4 input-group"> 
     <input type="text" id="password" class="form-control" placeholder="Mot de passe"> 
     <span class="input-group-btn"> 
      <button class="btn btn-secondary" type="submit">Envoyer</button> 
     </span> 
    </div> 
</form> 

とコントローラ

[HttpPost("/Connexion")] 
public IActionResult Connexion([FromBody] string password) 
{ 
     return View(); 
} 

フォームを提出、それがヒットしているのnullメソッド内の私のブレークポイントはパスワードパラメータがnullです。何が間違っていますか?

+0

ブラウザは、入力コントロールの 'name'属性を使用してサーバーにデータを送信します。 'id'属性はクライアント側のものです。 – erdinger

答えて

3

フォームフィールドは、パラメータ名と一致する必要があります。したがって、name属性を追加してください。

<input type="text" name="password" class="form-control" placeholder="Mot de passe"> 

また、[FromBody]装飾を削除することもできます。

[HttpPost("/Connexion")] 
public IActionResult Connexion(string password) 
{ 
    return View(); 
} 
+1

これを行い、コントローラの[FromBody]を削除しました! –

関連する問題