1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
namespace System.Web.Mvc {
using System;
using System.Collections.Specialized;
using System.Web.Helpers;
public sealed class FormValueProviderFactory : ValueProviderFactory {
private readonly UnvalidatedRequestValuesAccessor _unvalidatedValuesAccessor;
public FormValueProviderFactory()
: this(null) {
}
// For unit testing
internal FormValueProviderFactory(UnvalidatedRequestValuesAccessor unvalidatedValuesAccessor) {
_unvalidatedValuesAccessor = unvalidatedValuesAccessor ?? (cc => new UnvalidatedRequestValuesWrapper(cc.HttpContext.Request.Unvalidated()));
}
public override IValueProvider GetValueProvider(ControllerContext controllerContext) {
if (controllerContext == null) {
throw new ArgumentNullException("controllerContext");
}
return new FormValueProvider(controllerContext, _unvalidatedValuesAccessor(controllerContext));
}
}
}
|