したがって、FormDataCollection.ReadAsNameValueCollection()
を使用して、複数のパラメータをフィドラーからWeb APIに渡そうとしています。 問題が毎回私のデータを送信している、formData
はnullとして戻ってきます。私はここで何が間違っているのか分かりません。私はformData
を[FromBody]
属性で装飾しようとしました。また、global.asaxクラスにJsonMediaTypeFormatter()
を登録しました。Asp.Net Web Apiマルチパラメータパラメータ
ご協力いただければ幸いです。
以下のコードを参照してください。
[HttpPost]
public HttpResponseMessage PostAccount([FromBody]FormDataCollection formData)
{
if (formData != null)
{
var nValueCol = formData.ReadAsNameValueCollection();
var account = new Account()
{
Email = nValueCol["email"],
Password = nValueCol["password"],
AgreedToTerms = Convert.ToBoolean(nValueCol["agreesToTerms"]),
//LocationAccountCreated = DbGeography.FromText(nValueCol["userLocation"])
};
var userProfile = new UserProfile()
{
FirstName = nValueCol["firstName"],
LastName = nValueCol["lastName"],
DateOfBirth = Convert.ToDateTime(nValueCol["dateOfBirth"])
};
var newAcc = _accountService.CreateAccount(account.Email, userProfile.FirstName, userProfile.LastName,
userProfile.DateOfBirth, account.Email, account.AgreedToTerms,
account.LocationAccountCreated);
var response = Request.CreateResponse(HttpStatusCode.Created);
return response;
}
else
return Request.CreateResponse(HttpStatusCode.NotAcceptable);
}
をサンプル要求:
リクエストで送信しているContent-Typeはどれですか?リクエストの本文を表示できますか? –
こんにちはフェデリコ、私はフィドラーリクエストのスクリーンショットをアップロードしました。しかし私はapplication/jsonを使いました – user6201138