C# 在ASP.NET Core中,我可以判断模型绑定是来自查询还是来自请求体吗?

C# 在ASP.NET Core中,我可以判断模型绑定是来自查询还是来自请求体吗?,c#,asp.net,.net,.net-core,C#,Asp.net,.net,.net Core,在ASP.NET Core中,如果我写一个IModelBinder,就像这样 public class BBoxModelBinder : IModelBinder { public Task BindModelAsync(ModelBindingContext bindingContext) { ... } } 我可以告诉您绑定是来自具有[FromQuery]的查询还是来自具有[FromBody]的请求体吗 在ModelBindi

在ASP.NET Core中,如果我写一个
IModelBinder
,就像这样

public class BBoxModelBinder : IModelBinder
{
    public Task BindModelAsync(ModelBindingContext bindingContext)
    {           
        ...
    }
}
我可以告诉您绑定是来自具有[FromQuery]的查询还是来自具有[FromBody]的请求体吗

ModelBindingContext
上,我看不到它能告诉我这一点的任何东西

有人知道吗


提前谢谢。克里斯

这不取决于你使用什么样的请求方法吗?Get是FromQuery,Post是FROMBODY你可以有一个Get正文和一个Post查询字符串,我相信,所以我不这么认为?是的,你可以用Get发送一个请求正文,但它应该没有任何意义。如果您通过在服务器上解析它并根据其内容更改响应来赋予它意义,那么您就忽略了HTTP/1.1规范第4.3节中的这一建议,当然,这可能是最好的方法。我想我希望会有更明确的内容。感谢您的帮助@webbandtendost这取决于您使用的请求方法是什么?Get是FromQuery,Post是FROMBODY你可以有一个Get正文和一个Post查询字符串,我相信,所以我不这么认为?是的,你可以用Get发送一个请求正文,但它应该没有任何意义。如果您通过在服务器上解析它并根据其内容更改响应来赋予它意义,那么您就忽略了HTTP/1.1规范第4.3节中的这一建议,当然,这可能是最好的方法。我想我希望会有更明确的内容。谢谢你的帮助@Webbanditen