Почему я не могу добавить свою пользовательскую модель binder в моем глобальном.папка asax?


Я вижу примеры по всей сети людей, устанавливающих свои пользовательские привязки моделей следующим образом:

// global.asax
protected void Application_Start()
{
    ModelBinders.Binders.Add(typeof(YourModel), new YourBinder());
}
Но когда я пытаюсь это сделать, он не компилируется (.Binders не найден). Что это дает?
1 7

1 ответ:

Оказывается, это был просто конфликт имен, потому что я поместил свою пользовательскую модель binder в папку/пространство имен под названием "ModelBinders". Вы можете исправить это одним из двух способов:

  1. переименуйте пространство имен / папку на что-нибудь другое, например CustomModelBinders
  2. Используйте полную ссылку на ModelBinders следующим образом:

    System.Web.Mvc.ModelBinders.Binders.Add( /* ... */ );