Я работаю над уникальным домашним заданием веб-страницы для покупок, для которого я пытаюсь настроить базу данных. Моя проблема в том, как установить роли в моей базе данных. Я хочу иметь две роли: клиент и администратор. Я хочу, чтобы мой клиент мог зарегистрироваться, войти в систему, подтвердить свою электронную почту, добавить товар в корзину и завершить покупку. Роль администратора должна иметь возможность добавлять, редактировать и удалять статьи, добавлять, редактировать и удалять клиентов, а также публиковать продажи. Мой вопрос: что было бы самым простым рабочим решением, чтобы установить роли и ограничения для этой ситуации?
Я только начал этот проект, поэтому мне нечего показывать, но я искал эту тему в Интернете и нашел несколько решений, которые не были хорошо объяснены или содержали технологии, не подходящие для моего проекта. Я работаю с C # и ASP.net, используя стандартные MVC и Entity Framework, предоставляемые Visual Studio 2017 IDE.
Вот две модели, которые я создал и собираюсь использовать. Я использовал MVC5 для генерации представлений и контроллеров для этих моделей, добавляя их в контекст и базу данных.
public class Administrator
{
[Key]
public int AId { get; set; }
public string AName { get; set; }
public string ALastName { get; set; }
public string AEmail { get; set; }
public string APassword { get; set; }
}
public class Costumer
{
[Key]
public int CId { get; set; }
public string CName { get; set; }
public string CLastName { get; set; }
public string CEmail { get; set; }
public string CPassword { get; set; }
public string CAdress { get; set; }
public string CGender { get; set; }
public DateTime CBirthDate { get; set; }
}
Мне было предложено создать отдельную таблицу ролей для хранения roleId и roleName и попытаться установить роли путем подключения и сопоставления roleId с AId и CId. Пока что не удачно