Using JObject to pass data to webapi, how do you perform model validation of the objects returned from the JObject? I am using angurlarjs for binding and DTO for my model.
[System.Web.Http.HttpPost]
public HttpResponseMessage InsertSchoolBranch(JObject jsonData)
{
try
{
dynamic json = jsonData;
JObject jbranchInfo = json.branchInfo;
JObject jbranchPolicy = json.branchPolicy;
var branchInfo = jbranchInfo.ToObject<SchoolBranch>();
var branchPolicy = jbranchPolicy.ToObject<SchoolPolicy>();
int schoolId = Convert.ToInt32(UserDataPieces(2));
int userId = Convert.ToInt32(UserDataPieces(0));
unitOfWork.SchoolManagerRepository.InsertSchoolBranch(branchInfo, branchPolicy, userId, schoolId, ref message);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (UnauthorizedAccessException)
{
return Request.CreateResponse(HttpStatusCode.Unauthorized);
}
catch (Exception)
{
return Request.CreateResponse(HttpStatusCode.InternalServerError);
}
}