死简单的问题,可能不是那么简单的答案。发布 JSON。
public void Post(Model1 model1, Model2 model2)
{}
已填充模型 1,但未填充模型 2(空)。
public void Post(Model2 model2, Model1 model1)
{}
现在,模型 2 已填充,但未填充模型 1(空)。
为什么?
编辑
两个参数的原因?Model2 曾经是从 Model1 中引用的,但这不起作用。那是我把它们分开的时候。
编辑
对。感谢 marcind 对上述问题的回答。现在由于原始设置不起作用的原因。我不再是形式宇宙了。我发布Json。如果您的模型中有子对象,则在您的 json 中发布子对象。
给定
class ProductEditModel {
public string Name {get; set;}
}
class UserEditModel {
public string User {get; set;}
public ProductEditModel Product {get; set;}
}
以下
{"user": "philip", "product.name": "barbie"}
不会工作。如果您在 js 中尝试设置语义等效项,您甚至会收到错误
{user: "philip", product.name: "barbie"}
以下都不起作用,我不知道他们为什么会这样做:
{"user": "philip", "productname": "barbie"}
{"user": "philip", "product_name": "barbie"}
什么有效,什么应该是显而易见的,我的职业是
{"user": "philip", "product": {"name": "barbie"}}
请踢我。
谨防!鉴于对上述模型的相应编辑,以下内容将不起作用。
{"user": "philip", "ProductEditModel": {"name": "barbie"}}