我有Asp.Net WebApi 2 project, Now converted into Asp.Net Core 2.0
具有数组属性的HttpGet方法无法绑定模型。
该模型在Asp.net Core2.0中为空(使用swagger进行测试)
需要做什么改变吗?
public class Customer
{
public string name { get; set; }
public new string[] systemId { get; set; }
}
CustomerController.cs
[HttpGet]
public IActionResult RetrieveData(Customer filters)
{
// code
在Asp.net WebApi2中,它正常工作,但在Asp.net中,核心值不能绑定,值为null。
如果将其更改为HttpPost,它将运行得很好,但是为什么HttpGet不能像ASP.Net WebApi2那样工作呢?
发布于 2017-10-17 10:57:22
.net核心将其默认绑定更改为FromBody
。所以你现在的签名应该是:
[HttpGet]
public IActionResult RetrieveData([FromBody]Customer filters)
{
// code
把它当作身体送去。
您还可以使用data-属性:FromQuery
。
您可以阅读本文:https://www.strathweb.com/2016/09/required-query-string-parameters-in-asp-net-core-mvc/
干杯!
https://stackoverflow.com/questions/46788399
复制相似问题