我有以下课程:
public class TextFilter
{
public string Value { get; set; } = "";
public EnumTextFilterSearchMethod SearchMethod { get; set; } = EnumTextFilterSearchMethod.EQ;
}
public class ContractsFilter
{
public TextFilter ContractNumber { get; set; } = new TextFilter();
public TextFilter OrderNumber { get; set; } = new TextFilter();
}
和控制器:
[HttpGet("")]
public IActionResult Contracts([FromQuery] ContractsFilter filter = null)
查询字符串显示为:
http://localhost:63553/contracts?ContractNumber=my.namespace.TextFilter&OrderNumber=my.namespace.TextFilter
但是我需要查询字符串的格式如下:
http://localhost:63553/contracts?ContractNumber.Value=any_contract_number&ContractNumber.SearchMethod=EQ&OrderNumber.Value=any_order_number&OrderNumber.SearchMethod=EQ
如果我手动输入查询字符串,则控制器可以正确解析。
如何使ContractsFilter类具有包含TextFilter类的所有属性的查询字符串显示?
答案 0 :(得分:0)
以与尝试使用[FromUri]
属性相同的方式,在参数前尝试使用[FromBody]
属性。