asp.net MVC3: обрезка всех данных HTTP POST - PullRequest
2 голосов
/ 16 августа 2011

Мне нужно обрезать все данные HTTP POST, отправленные пользователями через веб-формы. Сделав поиск в Google, очевидно, в asp.net нет встроенной функциональности для обрезки всех данных HTTP POST.

Самое близкое, что я могу получить, это то, что описано здесь: ASP.NET MVC: лучший способ обрезать строки после ввода данных. Должен ли я создать пользовательское связующее для моделей?

К сожалению, он не работает на вложенных ViewModels (ViewModel со свойством с типом другого ViewModel).

Каков наилучший способ достичь этого? Я не хочу делать property.Trim () для каждого свойства во всей ViewModel. Спасибо.

1 Ответ

1 голос
/ 16 августа 2011

Один из вариантов - определить свой собственный IValueProvider. Я бы начал с наследования от NameValueCollectionValueProvider, чтобы получить TrimmedNameValueCollectionValueProvider, в котором вы обрезаете результаты по мере их извлечения. Тогда вы бы определили TrimmedFormValueProvider, который передается в controllerContext.HttpContext.Request.Form как collection.

...