Пользовательский поставщик членства * без * базы данных?

Я просматривал различные вопросы SO, сообщения в блогах и т. Д., Касающиеся изменений в поставщиках членства в MVC 4. Хотя мне нравятся многие изменения и упрощение вещей (особенно внешний вход в систему из коробки) поддержку), я пока не могу найти одну, казалось бы, простую вещь ...

Как я могу переопределить поставщика членства / роли с пользовательским, который использует другой источник данных?

Я не хочу заменятьWebSecurity или что-то такое радикальное, поскольку оно обрабатывает все, что я хочу, чтобы оно выполняло. (Управление cookie, например.) Я не хочу делать ничего, что нарушит существующую поддержку внешних провайдеров входа в систему, поскольку мое приложение использует их в сочетании с локальным входом в систему. Все, что я хочу сделать, это вставить между системой членства и базой данных за ней и настроить выборку этих данных.

Таблицы, которые он создает по умолчанию:

Профиль пользователяwebpages_Membershipwebpages_OAuthMembershipwebpages_Roleswebpages_UsersInRoles

И пока это работает, у меня есть причина абстрагироваться от некоторых пользовательских объектов и разорвать связь между приложением и базой данных. (По сути, у меня есть несколько пользовательских моделей доменов, полных бизнес-логики, которые должны обрабатывать все это, и я хочу, чтобы система членства / роли использовала эти модели вместо базы данных. Эти модели могут получать свои постоянные данные из базы данных, они могут нет. Это не должно иметь значения.)

Большинство ссылок, которые я нашел для настройки, утверждают, что это легко сделать, все, что мне нужно сделать, это изменитьUserProfile модели, включить мои новые настраиваемые поля в различные вызовы и обновить вызовInitializeDatabaseConnection чтобы указать на мою схему базы данных.

Но я не использую базу данных. (Или, более конкретно, что касается прикладного уровня, нет такой вещи, как база данных. Только модели моего домена.) Так что простая настройка ничего не меняет.

Есть ли способ вставки между системой членства и базой данных, чтобы я мог сделать пользовательский поставщик данных для существующего поставщика членства?

Ответы на вопрос(1)

Ваш ответ на вопрос