Мне нужно отображать кнопки в представлении в зависимости от ролей, скажем, у меня есть роли, такие как пользователь-администратор и пользователь по умолчанию, в котором пользователь-администратор сможет видеть кнопки удаления, изменения и добавления, но пользователь по умолчанию может выполнять только поиск.В настоящее время, когда пользователь входит в систему, я собираю идентификатор пользователя и отправляю его в базу данных, чтобы получить роль пользователя, и я сохраняю эти роли в сеансе.В представлении, извлекающем значение роли с использованием приведенного ниже кода
@if (Session["UserRole"].ToString() == "Admin")
{
//show delete,modify and create buttons
}
, но в моем случае код будет размещен на нескольких серверах, и запрос может отправляться на любой из серверов.
Мой вопрос - это хорошая практика для хранения ролей в сеансе, есть ли лучший подход для решения моего требования.Если я собираюсь провести сеанс в производственной среде, где будет несколько серверов, сработает ли подход сеанса?