API コントローラのメソッドがあります
public class PhotoController : ApiController
{
public IPhotoService _photoService;
public PhotoController()
{
_photoService = new PhotoService();
}
[HttpPost]
[Route("photo/upload/{photo}")]
public bool UploadPicture()
{
try
{
var httpRequest = HttpContext.Current.Request;
JObject param = JObject.Parse(HttpContext.Current.Request.Params["photo"]);
var path = "../" + Utils.RandomGenerator() + Utils.RandomGenerator() + "." + httpRequest.Files[0].FileName.Split('.').Last();
var postedFile = httpRequest.Files[0];
var filePath = HttpContext.Current.Server.MapPath(path);
postedFile.SaveAs(filePath);
_photoService.UploadPhoto(param, path);
return true;
}
catch (Exception ex)
{
return false;
}
}
}
このコードブロックを削除すると
public IPhotoService _photoService;
public PhotoController()
{
_photoService = new PhotoService();
}
動作しますが、サービスを作成するたびに API メソッドが動作しません
クライアントコンソールでは、常にこのエラーを出力します
POST localhost:17699/photo/upload/%7Bphoto%7D 500 (内部サーバー エラー)
他の API コントローラーはスムーズに動作するため、理由はわかりません。
プロジェクトを検索、クリーンアップ、ビルドしました...など...
助けてください