Лучшие практики для интеграции ASP.NET Identity - существуют ли они?

Я использую ASP.NET Identity с новым веб-сайтом, и, кажется, не так много (каких-либо?) Примеров того, как это сделать в отрыве. Я не хочу, чтобы моя модель доменаDomainUser класс, чтобы унаследовать отMicrosoft.AspNet.Identity.EntityFramework.UserИтак, я создал класс, который выглядит так:

public class IdentityUser : User
{
    public virtual DomainUser DomainUser { get; private set; }
}

Я переместилDbSetТребуется ASP.NET Identity в том же производномDbContext класс как модель моего доменакак показано в этом ответе, Я связалIdentityUser однонаправленно кDomainUser через Fluent API вот так:

modelBuilder.Entity<IdentityUser>().HasRequired(iu => iu.DomainUser).WithRequiredPrincipal();

Это позволяет мне в основном отделить вопросы авторизации и аутентификации от поведения, определенного вDomainUser класс. Это лучше, чем объединять их в один класс, но все равно это выглядит ужасно. У меня все еще есть ссылки на необходимые сборки удостоверений ASP.NET в моем проекте домена. Я мог бы создать еще один проект, который содержал бы только мой класс IdentityUser и ссылку на мою сборку домена, чтобы учесть свойство навигации, но это начинает казаться запутанным.

Я чувствую, что должен быть лучший, более чистый, более модульный способ связать Identity с доменом, не приводя к тесной связи.

Кто-нибудь придумал лучший способ справиться с этим? Я надеюсь привлечь внимание тех, кто участвует в проекте ASP.NET Identity (Хао Кунг и др.), чтобы указать направление здесь.

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

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