我想尝试将一个Protobuf ValueProviderFactory添加到MVC3,以便我可以选择MIME类型并将原始数据反序列化为对象以获取操作参数.我也可以使用它来更改默认的Json序列化程序.
看看JsonValueProviderFactory.cs这不应该太难,但工厂似乎都是硬编码的.
对于Protobuf我可以用IValueProvider做一些事情,但我还没有检查MVC3在收到MIME类型的application / x-protobuf时做了什么.
我是以正确的方式来做这件事的吗?
UPDATE
我找到了this篇关于创建IValueProvider的博客文章.然后它在底部提到这改变了MCV2.他将其更改为ValueProviderFactory并调用:
ValueProviderFactories.Factories.Add(new HttpCookieValueProviderFactory());
但在MVC3中,此属性是只读的.