asp.net назначение ролей пользователю / сеансу из mysql

#c# #asp.net #mysql

#c# #asp.net #mysql

Вопрос:

У меня есть две таблицы. Одна таблица с пользователями и другая таблица с ролями пользователей. Я знаю, как получить данные из базы данных mysql, но как мне добавить все эти роли моему пользователю?

Обычно я бы подумал Session.Add , но проблема в том, что у меня есть где угодно от 2-10 ролей, поэтому я был бы благодарен за любую помощь!

Цель этого в том, что я хочу создать панель навигации, которая будет отображать X количество ссылок на основе любой строки, которую они имеют, а также блокировать определенные функции.

Я разобрался с этим

 MySqlCommand cmd2 = new MySqlCommand(storedProcedureName2, cn);
                cmd2.CommandType = CommandType.StoredProcedure;
                cmd2.Parameters.Add("@usernameID", userID);
                MySqlDataReader dr2 = cmd2.ExecuteReader();
                while (dr2.Read())
                {
                    string roleName = dr2["role"].ToString();
                    mysql
                    Roles.AddUserToRole(userID, roleName);
                }
  

Однако это не вернется с таймаутом контакта с sql server. Как мне преобразовать это для использования MySQL.

Ответ №1:

Я бы посмотрел на реализацию ваших собственных Membership и Roles поставщиков:

Комментарии:

1. Почему бы просто не использовать поставщика ролей, который поставляется с MySQL?

2. Преимущество в том, что он сможет использовать свои существующие таблицы и данные без необходимости преобразовывать их в структуру, требуемую этими поставщиками.