0

パラメータの値に基づいて何らかの応答を返すメソッドを持つコントローラがあります。Json データをこのコントローラーに POST しようとしていますが、どういうわけかバインディングが機能していません。Fiddler を使用してコントローラー メソッドをテストしています。

[AcceptVerbs(HttpVerbs.Post)]
public string Authenticate(string username)
{
    //some logic
    return "value";
}

アプリケーションをデバッグすると、userName は常に null を返すようになりました。この方法をテストするために、私は Fiddler を使用しています。リクエストの生データは次のとおりです。

POST http://localsite/Home/authenticate HTTP/1.1
User-Agent: Fiddler
Host: localhost:52774
x-requested-with: XMLHttpRequest
Content-Length: 20
Content-Type: application/json; charset=utf-8
Accept: application/json

{"username":"kunal"}

これで私が間違っていると推測します。

4

1 に答える 1

0

MVC2では、JSONのモデルバインダーサポートはそのままではありません。

MVC3 / 4にアップグレードする予定がない場合は、良い記事を見つけることができます。ASP.NETにJSONを送信するMVCアクションメソッド引数MVC2アプリでJSONを有効にする方法。

基本的に、を作成して追加する必要がありJsonValueProviderFactoryますValueProviderFactories...

幸い、 ASP.NET MVC2Futuresライブラリに実装があります。

于 2012-07-04T06:48:01.427 に答える