我正在使用ASP.NET中的REST API。我做的第一件事就是模型的Model Binder,用这样的代码与模型绑定:
[ModelBinder(typeof(MyModelModelBinder))]
public class MyModel { ... }
并在行动中使用它
public IHttpActionResult Post(MyModel model) { ... }
我突然意识到,在参数类型...
之前添加[FromBody]之后public IHttpActionResult Post([FromBody]MyModel model) { ... }
... Model Binder被忽略了。我尝试通过在BindModel方法的开头和操作开始处设置断点来调试它,并意识到当我调用操作时,我会直接进入操作。当我删除FromBody属性时,ModelBinder中的断点再次变为活动状态。
为什么我不能同时使用它们?为什么FromBody属性忽略了ModelBinder?