// Instantiate the value providers for the given action context.
        private static IValueProvider CreateValueProvider(ValueProviderFactory[] factories, HttpActionContext actionContext)
        {
            if (factories.Length == 1)
            {
                return factories[0].GetValueProvider(actionContext);
            }

            IValueProvider[] providers = Array.ConvertAll(factories, f => f.GetValueProvider(actionContext));            
            return new CompositeValueProvider(providers);
        }
 public override IEnumerable<ValueProviderFactory> GetValueProviderFactories(HttpConfiguration configuration)
 {
     var factories = new ValueProviderFactory[] { new HeaderValueProvider() };
     return factories;
 }