C#Web.API无法添加自定义模型活页夹



我有API控制器,它有一个Put方法

public class ScheduleExecutionsController : ApiController
{
    public ScheduleExecutionsResponse Put([ModelBinder(typeof(TestBinder))]ScheduleExecutionsRequest requestInfo)
    {
        ....
    }
}

我在项目中添加了一个活页夹类

public class TestBinder : IModelBinder
{
    public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
    {
        return new ScheduleExecutionsRequest();
    }
}

我设置了2个断点。第一个到控制器中Put方法的第一行,第二个到我的TestBinder BindModel对象的第一行。在与Fiddler之后,我发送PUT请求。

调试器总是在我的操作中停止,但从未在绑定器的BindModel方法中停止。似乎使用了默认的活页夹。添加自定义项时遗漏了什么?

您使用的是ModelBinderAttribute的WebAPI还是MVC版本?

MVC和WebAPI的大多数基础设施——过滤器、绑定等——以两种形式存在(由于这两个库的历史)。WebAPI控制器和操作必须使用它们的WebAPI版本(命名空间System.Web.Http或其子命名空间)。

相关内容

  • 没有找到相关文章

最新更新