だから私はWeb APIを学んでいる学生です。基本的な Web API を開発しましたが、post メソッドを使用すると 500 の iternal サーバー エラーが発生します。get メソッドは正常に機能しています。デバッグ中にヒットした db.SaveChanges(); ただし、HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, user); をヒットすると 500 エラーが返されます。mysql データベースを mysql コネクタ 6.7.4 で使用しています。
STACKOVERFLOW は私に画像を投稿させないので、ここに私のデバッグ画面の写真があります: http://i44.tinypic.com/25tyy3m.png
フィドラーを使用して投稿リクエストを送信しています:
応答ヘッダー: HTTP/1.1 500 内部サーバー エラー
リクエスト ヘッダー: ユーザー エージェント: Fiddler ホスト: localhost:45379 コンテンツ タイプ: application/jsonContent-Length: 41 コンテンツ長: 41
リクエスト本文: {"iduser":"44444888","username":"oooooo"}
POSTメソッドの私のコード:
// POST api/User
public HttpResponseMessage Postuser(user user)
{
if (ModelState.IsValid)
{
db.users.Add(user);
db.SaveChanges();
HttpResponseMessage response =R equest.CreateResponse(HttpStatusCode.Created, user);
response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = user.iduser }));
return response;
}
else
{
return Request.CreateResponse(HttpStatusCode.BadRequest);
}
}