ASP.NET C # извлекает несколько значений из базы данных и добавляет в сеанс - PullRequest
0 голосов
/ 06 января 2019

Как добавить несколько значений столбцов из базы данных SQL Server и вставить в session[]?

Просто FirstName работает, когда я добавляю LastName, я получаю ошибку.

string constr = sql connection here.... ;

using (SqlConnection con = new SqlConnection(constr))
{
    using (SqlCommand cmd = new SqlCommand("SELECT Email, [FirstName] FROM Personal WHERE Email = @email"), cmd2 = new SqlCommand("SELECT Email, [LastName] FROM Personal WHERE Email = @email"))
    {
        cmd.Parameters.AddWithValue("@email", TextboxUsr.Text);
        cmd.Connection = con;
        cmd2.Parameters.AddWithValue("@email", TextboxUsr.Text);
        cmd2.Connection = con;

        con.Open();

        using (SqlDataReader sdr = cmd.ExecuteReader())
        {
            if (sdr.Read())
            {
                string fName = sdr["FirstName"].ToString();
                //string lName = sdr["LastName"].ToString();

                string userFullName = fName;
                Session["New"] = userFullName;
            }
        }

        //con.Close();
    }
}

1 Ответ

0 голосов
/ 06 января 2019

Шаг 01: узнайте больше об основах SQL и C #

Вы должны прочитать больше в

Шаг 02: используйте Выбрать правильно

  • изменить

    SqlCommand 
    cmd = new SqlCommand("SELECT Email, [FirstName] FROM Personal WHERE Email = @email"), 
    cmd2 = new SqlCommand("SELECT Email, [LastName] FROM Personal WHERE Email = @email"))
    
  • до

    SqlCommand 
    cmd = new SqlCommand("SELECT Email, [FirstName],[LastName] FROM Personal WHERE Email = @email")
    

Шаг 03: прочитайте полный код

var sql = @"SELECT Email, [FirstName],[LastName] FROM Personal WHERE Email = @email";
using (var con = new SqlConnection(constr))
using (var cmd = new SqlCommand(sql, con))
{
    con.Open();
    cmd.Parameters.AddWithValue("@email", TextboxUsr.Text);
    using (var sdr = cmd.ExecuteReader())
    {
        if (sdr.Read())
        {
            var fName = sdr["FirstName"].ToString();
            var lName = sdr["LastName"].ToString();
            var userFullName = fName + " " + lName;
            Session["New"] = userFullName;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...