Как получить модель после привязки, но до проверки?

Можно ли сделать глобальный перехват для модели сразу после ее создания в связывателе, но до ее проверки. Я пробовал фильтры, но фильтр вызывается после проверки.

2 ответа

Решение

Примерно так должно работать:

public class CustomModelBinder: DefaultModelBinder
{
    protected override void OnModelUpdated(ControllerContext controllerContext, ModelBindingContext bindingContext)
    {
        base.OnModelUpdated(controllerContext, bindingContext);
        //You now have access to "bindingContext.Model" which is your model.
    }
}

А потом в Application_Start в Globals.asax (не забудьте эту часть):

ModelBinders.Binders.DefaultBinder = new CustomModelBinder();

Попробуйте пользовательскую модель переплета. Это будет перехватывать конвейер запроса перед проверкой модели. Воплощать в жизнь IModelBinder,

Другие вопросы по тегам