Классы IdentityUser в качестве прямого клиента и торгового посредника в ASP. NET Core 3.0 - PullRequest
0 голосов
/ 25 апреля 2020

Я создаю веб-приложение для службы, используя ASP. NET core 3.0. Существует два типа пользователей приложения

  1. Пользователь, такой как администратор и посредник (поставщик услуг)
  2. Клиенты посредника

Я создал класс Реселлер с некоторой дополнительной информацией, указывающей c для реселлера

public class Reseller : BaseEntity
{
    public string CompanyName { get; set; }
    public virtual ApplicationUser User { get; set; } //login account of reseller
    public virtual IList<ResellerCustomer> Customers { get; set; }
}

Это означает, что реселлер будет иметь логин, привязанный к этому классу.

Также у каждого реселлера может быть много клиентов, и его логин будет созданный посредниками, но они не будут иметь никакой дополнительной информации, однако я должен быть уверен, что смогу в любое время найти посредника вошедшего в систему пользователя, а также клиентов вошедшего в систему посредника. В будущем существует вероятность того, что будут прямые клиенты службы, не привязанные к каким-либо посредникам.

Поэтому я создал этот класс тоже

public class ResellerCustomer:BaseEntity
{
    public virtual Reseller Provider { get; set; } // Please don't worry about name :)
    public virtual ApplicationUser User { get; set; } //Login account of customer
}

Я оставляю класс ApplicationUser на его уровне минимум, поэтому он подходит для логинов посредников, администраторов и клиентов посредников

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

Достаточно ли этого хорошо? Что было бы лучшим подходом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...