Json .NET WebAPI未从请求内容正确解析[FromBody]
我已经习惯了HTTP内容协商的流程,但以下内容似乎不合适: 我有一个具有以下内容的.NET WebApi控制器:Json .NET WebAPI未从请求内容正确解析[FromBody],json,post,asp.net-web-api,Json,Post,Asp.net Web Api,我已经习惯了HTTP内容协商的流程,但以下内容似乎不合适: 我有一个具有以下内容的.NET WebApi控制器: /// <summary> /// Search for Records corresponding to the given criterias /// </summary> [AcceptVerbs("POST")] public async Task<IHttpActionResult> SearchR
/// <summary>
/// Search for Records corresponding to the given criterias
/// </summary>
[AcceptVerbs("POST")]
public async Task<IHttpActionResult> SearchRecord([FromBody]SearchPeopleModel recordSearchModel)
{
var recordService = Context.Services.Get<IRecordService>();
var result = await recordService.SearchRecord(recordSearchModel);
return Jsonify(result);
}
调试WebApi时,生成的recordSearchModel为NULL。
我已经尝试使用body内容和JSON.stringify/not,这似乎也不是问题所在
我一定错过了什么,但是。。。我不知道在哪里!希望有人能帮忙
编辑:根据请求,这里是searchPeopleModel类。我不会展示RecordService的实现,因为它与这里的问题无关
public class SearchPeopleModel
{
public string Any {get; set;}
public string Firstname { get; set; }
public string Lastname { get; set; }
public string Birthname { get; set; }
public DateTime? BirthDate { get; set; }
public Guid? PatientId { get; set; }
}
一些我可能不清楚的精确性:当ASP.NET WEB API接收到请求时,recordSearchModel为空,其余代码完全按照预期运行。我终于找到了答案 它将显示参数
public Guid? PatientId { get; set; }
默认情况下,asp.net webapi无法从SearchPeopleModel反序列化。
为使此类行为有效,我们必须发送:
{"Any":"mat","Firstname":"","Lastname":"","Birthname":""}
而不是:
{"Any":"mat","Firstname":"","Lastname":"","Birthname":"","PatientId":""}
原因:
“”无法转换为有效的空Guid。
“[某些有效guid]”仍然有效
希望它能帮助别人。我终于找到了答案 它将显示参数
public Guid? PatientId { get; set; }
默认情况下,asp.net webapi无法从SearchPeopleModel反序列化。
为使此类行为有效,我们必须发送:
{"Any":"mat","Firstname":"","Lastname":"","Birthname":""}
而不是:
{"Any":"mat","Firstname":"","Lastname":"","Birthname":"","PatientId":""}
原因:
“”无法转换为有效的空Guid。
“[某些有效guid]”仍然有效
希望它能帮助别人。你能提供RecordService代码吗?不同型号的代码相同,对我有效。你能显示SearchPeopleModel类吗?根据要求,编辑添加了SearchPeopleModel类,对我仍然有效。你能提供RecordService代码吗?不同型号的代码相同,代码对我有效。你能显示SearchPeopleModel类吗?根据要求,编辑添加了SearchPeopleModel类。它对我仍然有效