DELETE 동사를 사용하려고하면 null 매개 변수가 표시되거나 컨트롤러가 실행되지 않습니다.Web Api에서 삭제가 작동하지 않습니다.
[HttpDelete]
public IHttpActionResult Delete(Announcement announcement) {
_unitOfWork.Announcements.Remove(announcement);
_unitOfWork.Complete();
return Ok();
}
컨트롤러 화재,하지만 announcement
가 null
입니다 :
아래와 같이 Route
속성을 추가하면 컨트롤러가 전혀 작동하지 않습니다.
[HttpDelete]
[Route("api/announcements/{announcement}")]
public IHttpActionResult Delete(Announcement announcement) {
_unitOfWork.Announcements.Remove(announcement);
_unitOfWork.Complete();
return Ok();
}
클라이언트 측 각도 DELETE
통해 개시된다.
myAPIservice.DeleteAnnouncement = function (announcement) {
console.log('In myAPIservice DeleteAnnouncement');
console.log(announcement);
return $http.delete(serviceURLRoot + 'api/announcements/', announcement, { withCredentials: true }).success(function (data) {
console.log('myAPIservice.DeleteAnnouncement Success');
});
};
편집 ---
발표 클래스 :
public class Announcement {
public int AnnouncementId { get; set; }
public string AnnouncementText { get; set; }
}
'Announcement' 클래스는 어떻게 생겼습니까? – PzYon
@PzYon 발표 클래스 정의로 질문을 업데이트했습니다. – Legion
발표의 모양이 관련이 없습니다. 내 대답을 참조하십시오. – Alex