Я создал атрибут Action и ValueProvider для решения этой проблемы. Назвал его GetValuesAttribute и StrictValueProviderDictionary соотв. Вы можете установить исходную форму, RouteData или QueryString. Например, если вы хотите, чтобы ValueProvider выполнял поиск значений в форме, и, возможно, QueryString напишите следующее над вашим методом или контроллером:
[GetValues(ValueSource.Form | ValueSource.QueryString)]
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(FormCollection formValues)
{
...
UpdateModel(myModel); //model will be updated from mentioned sources
Исходный код находится здесь: http://codepaste.net/2kpzct. Единственная проблема в том, что он не будет работать, если вы захотите получить заполненную модель в качестве параметра.