当数据来到WebApi controller
时,模型会出现,但它具有所有null
属性。
我试图查看数据是否在var data = new StreamReader (HttpContext.Current.Request.InputStream). ReadToEnd ();
中,结果证明它们是。{/ p>
// POST: api/Events
public void PostSome(NewEventVm eventVm)
{
var data = new StreamReader(HttpContext.Current.Request.InputStream).ReadToEnd();
}
打字稿
submitEventForm(): void {
debugger;
this.event.Image = this.image;
let postData = { eventVm: this.event };
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
let body = JSON.stringify(postData);
var a = this.http.post("/EventsModuleApi/Events/PostSome", body, options).toPromise(this.result);};
可能是什么问题?
答案 0 :(得分:1)
你的json与你的模特不符。
这一行:
let postData = { eventVm: this.event };
将发布一个包含另一个对象的对象,这是您的模型。将其更改为:
let postData = this.event;
假设this.event
包含与NewEventVm
类相同的属性,Web API会将其正确反序列化为您的参数。