Вывод данных авторизированного пользователя

178
10 апреля 2018, 02:55

Здравствуйте сделал авторизацию пользователя в программе через бд по логину и паролю.Хотелось чтобы после входа.Выводились данные авторизованного пользователя.Помогите пожалуйста разобраться как можно это реализовать. Вот код авторизации:

   using (var con = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\User\Desktop\база\Питание.mdf;Integrated Security=True;Connect Timeout=30"))
        {
            con.Open();
            using (var cmd = new SqlCommand("Select Count (1) From Регистрация where Логин=@login and Пароль=@Pass", con)) 
            {
                cmd.Parameters.AddWithValue("login", textBox1.Text);
                cmd.Parameters.AddWithValue("Pass", textBox2.Text);

                var accountsCount = (int)cmd.ExecuteScalar();

                if (accountsCount==1)
                {
                    Form5 a = new Form5();
                    a.label1.Text = accountsCount.ToString();
                    a.Show();
                }
                else
                {
                    MessageBox.Show("Неверные данные");
                }
            }

        }
Answer 1

Так же как и с «авторизацией», с помощью SqlCommand выполняем запрос к таблице, проставляя список нужных столбцов:

using (var cmd = new SqlCommand("Select пол, рост, вес From Регистрация where Логин=@login and Пароль=@Pass", con))
{

Чтобы прочитать результаты используем метод ExecuteReader, который возвращает объект SqlDataReader. Этот объект содержит методы по чтению набора данных.

В документации к методу есть пример использования:

SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
    {
        Console.WriteLine(String.Format("{0}", reader[0]));
    } 

К столбцам можно обращаться по порядку в запросе (reader[1], reader[2]) так и по именам (reader["пол"], reader["рост"], и т.д.). Поэкспериментируйте с запросом и чтением результатов и выберите удобный способ.

З.Ы. Стоит заметить что такая «авторизация» имеет смысл только для Вашего приложения и не защищает от прямого доступа к файлу БД. Для защиты данных устанавливайте сервер и настраивайте встроенную авторизацию. И не храните пароли в открытом виде.

READ ALSO
Какие хитрости и просто сложные вещи нужно знать в css [требует правки]

Какие хитрости и просто сложные вещи нужно знать в css [требует правки]

Какие хитрости и просто сложные вещи нужно знать в css ?

214
flexbox Расположение друг под другом [требует правки]

flexbox Расположение друг под другом [требует правки]

Мне надо сделать, чтобы блоки, чьи высоты не превышают самых высоких блоков, ставали друг под друга, а не переносились на новую строчку

209