ASP.NET MVC:ValueProviders的执行顺序
我想知道在ASP.NET MVC中执行不同ValueProviders
的顺序。
ValueProviders:
- QueryStringValueProvider
- RouteDataValueProvider
- FormValueProvider
- …
我没有找到相关信息。
如果记忆为我服务,优先级就是这样。
- 请求中的表单数据
- 路线数据
- 请求参数
- Http文件集
编辑我似乎与以下网站达成一致,该网站列出了相同的订单。 http://www.howmvcworks.net/OnModelsAndViewModels/TheBeautyThatIsTheModelBinder
您可以从ASP.NET MVC源代码中查看: ValueProviderFactories.cs
以下是ValueProviders的预定义顺序:
private static readonly ValueProviderFactoryCollection _factories = new ValueProviderFactoryCollection() { new ChildActionValueProviderFactory(), new FormValueProviderFactory(), new JsonValueProviderFactory(), new RouteDataValueProviderFactory(), new QueryStringValueProviderFactory(), new HttpFileCollectionValueProviderFactory(), };