입력 및 출력을 위해 JSON을 사용하여 RESTful API를 작성 중입니다. 들어오는 요청에 관련 데이터가 포함 된 JSON 형식의 본문이 있어야하며 응답도 JSON 형식이어야합니다.웹 API 2 액션에서 JSON 형식의 데이터 수신?
내가 겪고있는 문제는 나 자신의 삶에 대해 POST 요청에서 정보를 수집하고 해당 객체에 올바르게 매핑하는 방법을 찾아 낼 수 없다는 것입니다.
예를 들어,이 유사한 JSON 형식의 연락처 개체를 포함합니다 "/ 연락처"에 대한 POST 요청을 허용 할 :
{"Given":"John", "Surname":"Doe"}
문제는 내가 할 수없는 시도 상관없이, 없다 수신 액션이이 정보를 인식하도록하십시오. 내 작업 내에서 요청 본문에 제출 된 JSON 객체에 어떻게 액세스합니까?
[RoutePrefix("contacts")]
public class ContactsController : BaseController
{
[Route("")]
[ResponseType(typeof(ApiResponse))]
public IHttpActionResult PostContacts(FormDataCollection data)
{
ApiResponse response = new ApiResponse();
response.Data = data;
return Ok(response);
}
}
응답에는 항상 "response.Data"에 대한 null 값이 포함되어 있으며 응용 프로그램을 디버깅 할 때 "데이터"가 실제로 null임을 알 수 있습니다.
편집 :
는 내가이 작업을 같은 을 거라고 방법을 언급하는 것을 잊었다. 접촉 변수가 자동으로 JSON을 기반으로 채워집니다
public IHttpActionResult PostContacts(Contact contact) {}
들어오는 요청 본문에 포함 된 이상적으로 나는 나의 행동이 유사한 서명을 갖고 싶어. 이 같은 몸에서 개체를로드
나는 이것을 시도했지만, 내가 뭘 잘못하고 있었는지 전혀 몰랐다. 나는 당신의 제안을 시도했고 그것은 완벽하게 작동했습니다, 감사합니다! –