htmlフォームからweb APIへの投稿2controller

asp.net-web-api c# dapper owin

質問

OK、私はWeb APIの周りに頭を抱えようとしています。認証用コントローラにユーザー名とパスワードを投稿するmokupログインページを作成したかったのです。しかし、私は私のポストでは何も得ていないようです

ポストnull

これは私のコントローラでユーザーネームとパスワードを試して検証するときに問題を引き起こしています:

public class LoginCredentials
{
    public string Username { get; set; }
    public string Password { get; set; }
}

public class AuthenticationController : ApiController
{
    /// <summary>
    /// Creates an authenticated session. If successfully authenticated returns            a 'Set-Cookie' header
    /// containing the cookie for future requests. On failed login attempt an HTTP 
                401 error is returned.
    /// </summary>
    [HttpPost, AllowAnonymous]
    [Route("api/login")]
    public HttpResponseMessage Login([FromBody]LoginCredentials credentials)
    {           
        Logout();
        credentials.Username = credentials.Username ?? string.Empty;
        credentials.Password = credentials.Password ?? string.Empty;

        var authResult = Authentication.Authenticate(credentials.Username, 
                          credentials.Password);
        if (authResult == null || authResult.User == null)
            return Authentication.GetUnauthorisedResponse();
        if (!authResult.UseAllowed)
            return Authentication.GetNotUseAllowedResponse
                            (authResult.Status);

        var authenticationManager = Request.GetOwinContext().Authentication;
        authenticationManager.SignIn(authResult.User.ToIdentity());

        return new HttpResponseMessage(HttpStatusCode.NoContent);;
    }
   }

私のフォームは次のようになります:

  <form autocomplete="off" method="post" action="/api/login" name="myLogin">

    <fieldset>
        <legend>Login credentials</legend>

        <div class="form-group">
            <label for="Username">Username</label>
            <input id="Username" type="text" />
        </div>

        <div>
            <label for="Password">Password</label>
            <input id="Password" type="password" />
            <span class="help-block" data-validation="Password"></span>
        </div>

        <div class="form-group center">
            <button type="submit" class="btn btn-primary" data-disable-on-submit="true">Log 
              on</button>
        </div>
    </fieldset>
</form>

私はそれが正しいかどうか分からない。

受け入れられた回答

あなたは入力与えてみましたnameビューモデルのプロパティ名と同じプロパティ値を?

 <input id="Username" name="Username" type="text" />

フォームの投稿データをビューモデルオブジェクトにバインドします。



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ