WebAPIコントローラのPOSTメソッドの1つから応答を送信しようとしています。 DBでは値は保存されていますが、tryとcatchの両方で応答を送信している間は、次の例外がスローされます。応答の送信時にASP.NET WebAPIエラーが発生しました
例外メッセージ:「値はnullではありません。パラメータ名:リクエスト」。
コントローラメソッドコード:
[HttpPost]
public HttpResponseMessage AddEmployee(Employee emp)
{
try
{
using (EmployeeEntities dbEntity = new EmployeeEntities())
{
dbEntity.Configuration.LazyLoadingEnabled = false;
dbEntity.Employees.Add(emp);
dbEntity.SaveChanges();
return Request.CreateResponse(HttpStatusCode.Created, emp); // EXCEPTION IS THROWN HERE
}
}
catch(Exception ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
}
}
私はこの問題を解決するために何をする必要があるか教えてください。ありがとう。
CreateResponseがnull参照を取得文句される実際の拡張方法
EmployeeController empCtrl = new EmployeeController();
empCtrl.AddEmployee(emp);
このメソッドを呼び出す場所にコードを追加できますか? – zzT
@zzT APIコントローラメソッドを呼び出す場所の詳細を質問に反映しました。チェックしてください。 – Manju
@Manjuなぜ手動でコントローラを作成していますか? APIは要求フローの一部としてそれを作成します。手動で作成することで、 'Request'が' null'の理由である 'Request'のような他の必須のプロパティを設定することはありません。 – Nkosi