JsonProperty(Order = X)] 不适用于 [FromBody] 和 [FromRoute]

JsonProperty(Order = X)] is not working with [FromBody] and [FromRoute]

在序列化版本中,它returns请求作为最后一个对象,即使我先订购了它。有没有办法设置请求顺序1?

有没有类似的,FromBody永远在最后?

    public class Class1
    {
        [FromRoute(Name = "runId")]
        [JsonProperty(Order = 2)]
        public string Id { get; set; }


        [FromBody]
        [JsonProperty(Order = 1)]
        public Request Request { get; set; }
    }

Class1的模型绑定顺序是由模型中属性的顺序决定的,而不是由[FromRoute][FromBody]决定的。所以如果你想先绑定[FromBody],你可以喜欢 this.Here 是一个演示:

public class Class1
    {
        [FromBody]
        public Sample Sample { get; set; }
        [FromRoute(Name = "runId")]
        public int Id { get; set; }
      
    }
    public class Sample
    {
        public int Foo { get; set; }
        public string Name { get; set; }
    }

控制器:

[HttpPost("Create/{runId}")]
        public IActionResult Create(Class1 partner) {
            return Ok();
        }

结果: