私は新しいASP.NET Web APIを理解しようとしています。asp.net Web APIへのデータの投稿
これまでのところ、私は、このメソッドシグネチャを作成し、それにうまく接続し、有効な応答を取得することができました...
[HttpPost]
public HttpResponseMessage CreateAccount()
私はシオマネキと、このメソッドにリクエストを送信することができていますし、要求を受信していることを確認しました。
しかし、データを渡そうとすると、私は問題に遭遇しています。
私が試した最初の事は...
[HttpPost]
public HttpResponseMessage CreateAccount([FromBody]string email, [FromBody]string password)
だったと私は
電子メールを入力:シオマネキにおける要求の本体にABC
:XYZ、パスワードを。私がこれを行うと、私は500というエラーが出ます。
'リクエストのコンテンツに複数のパラメータ(' email 'と' password ')をバインドできません。
私もメソッドのシグネチャとしてこれを試してみました... UserAccountRequestDataは、単純なPOCO
public class UserAccountRequestData
{
public string Email { get; set; }
public string Password { get; set; }
}
であると私は
{メール
を置くと[HttpPost]
public HttpResponseMessage CreateAccount([FromBody]UserAccountRequestData data)
:XYZ、パスワード:abc}
または
データ:{Email:xyz、Password:abc}
リクエストの本文に。どちらの場合も、POCOをポピュレートしようとすると、デバッグ中にメソッドに到達できますが、データオブジェクトは常にnullです。
強く型付けされたPOCOと、文字列やintのような複数のプリミティブ型を受け付けるAPIメソッドの両方を受け入れるAPIメソッドを作成する方法を理解する必要があります。あなたがapplication/json
にContent-Type
ヘッダを設定し、有効なJSONを提供する必要が
おかげ
+1ダレルミラーの答えです。また、[JSONオブジェクトからWeb APIへの送信](http://stackoverflow.com/questions/13870161/sending-json-object-to-web-api)の回答を参照することもできます。それはあなたの質問のサンプルコードを提供します。 –