【发布时间】:2017-01-29 15:26:34
【问题描述】:
我有一个运行良好的 MVC 5 项目,我需要将该项目迁移到带有 .net 核心的 MVC 6。在设法调整一切工作后,我遇到了一个问题:我的许多操作都接受超过 1 个对象作为参数。 MVC 5 使用的模型绑定器对此没有问题,但 MVC 6 似乎将 null 放在此类操作的所有参数中,我想这是 MVC 和 WebAPI 统一的一部分。我的问题是,如果没有添加另一个请求包装器对象的模型库 ,是否还有其他方法。
例如:
[HttpPost]
public ActionResult GetVersionData(OvlEnvironment environment, Pipeline pipeline)
{
BL.SetEnviromentVersion(pipeline, environment);
return PartialView("_Version", environment);
}
关于mvc 5项目的ajax请求中包含json数据的形式
{ "environment" : {*Data...*},
"pipeline" : {*Data...*}
}
被接受。在 mvc 6 中,响应同一请求的两个对象似乎都是空的。
谢谢
【问题讨论】:
-
请提供具体例子
-
好的,添加一个例子
-
尝试添加 [FromBody] 例如GetVersionData([FromBody] OvlEnvironment 环境,[FromBody] Pipeline pipeline)
-
试过了,没用
-
是的,你不能添加
[FromBody]两次..
标签: c# asp.net-mvc asp.net-core-mvc .net-core