【发布时间】:2021-09-05 21:29:10
【问题描述】:
我在以前的框架中从 .net 4.8 迁移到 .net core 3.1,这个帖子调用工作正常,但在 .net core 模型中没有绑定。虽然控制器方法被调用,但所有参数均为空。 也附上日志。
在请求中找不到名称为“parameters.configRowLimit”的值,用于类型为“System.Int32”的绑定属性“Project.BusinessObjects.Areas.Reports.ViewParameters”。“configRowLimit”
它适用于每个属性。我不明白为什么它在查看parameters.configRowLimit 而从前端它在parameters.ViewParameters.configRowLimit 内
这是我的前端参数。
让 ViewParameters = {};
ViewParameters = {
SqlQuery: SqlQuery,
ViewObject: ViewObject,
RowCount: totalCount,
MaximumRowLimit: maximumRowLimit,
AppInstanceID: $('#AppInstanceId').val(),
FileName: metricName
};
let params = {};
params = {
ViewParameters: ViewParameters,
Metrics: obj,
fileTypes: value
};
let body = { parameters: params };
let options = ({ headers: headers });
return this.http.post(this._controllerMethod, body, options)`enter code here`
这是.net核心控制器方法
[FileDownload, DeleteFile]
public ActionResult DownLoadQuery([FromBody] CurrentMetricDownload parameters)
模型 CurrentMetricDownload
public class CurrentMetricDownload
{
public FileTypes fileTypes { get; set; }
public ExportFile File { get; set; }
public TreeMetrics Metrics { get; set; }
public ViewParameters Viewparameters { get; set; }
}
【问题讨论】:
标签: c# angular asp.net-core asp.net-core-3.1 model-binding