Я хотел бы написать собственное связующее устройство для типа DateTime. Прежде всего, я хотел бы написать новый атрибут, который я могу прикрепить к свойству модели, например:
[DateTimeFormat("d.M.yyyy")]
public DateTime Birth { get; set,}
Это легкая часть. Но связующая часть немного сложнее. Я хотел бы добавить новое связующее устройство для типа DateTime. Я могу либо
- реализовать интерфейс
IModelBinderи написать собственный методBindModel() - наследовать от
DefaultModelBinderи переопределитьBindModel()метод
Моя модель имеет свойство, как показано выше (Birth). Поэтому, когда модель пытается связать данные запроса с этим свойством, вызывается мое связующее устройство BindModel(controllerContext, bindingContext). Все нормально, но. Как получить атрибуты свойств из контроллера /bindingContext, правильно ли вывести дату?? Как я могу получить PropertyDesciptor свойства Birth?
Изменить
Из-за разделения проблем мой модельный класс определен в сборке, которая не (и не должна) ссылается на сборку System.Web.MVC. Настройка настраиваемого привязки (аналогично пример Scott Hanselman), здесь нет необходимости.