Click here to Skip to main content
15,896,539 members
Please Sign up or sign in to vote.
5.00/5 (1 vote)
Dear frnds,

how to combine first name and last name in asp.net c# and read it from database.

This is my code.

BtnSearch_Click
=================
C#
SqlConnection con = new SqlConnection(_connString); 
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "SELECT FirstName,LastName,CompanyName,Department,Location,MobileNo from ResidentTable where EmployeeNo='" + TxtSearch.Text + "'";

        using (con)
        {
            con.Open();
            SqlDataReader reader = cmd.ExecuteReader();
            if (reader.Read())
            {
lblFirstName.Text = reader["FirstName"].ToString();
lblLastName.Text = reader["LastName"].ToString();
lblCompanyName.Text = reader["CompanyName"].ToString();
lblDepartment.Text = reader["Department"].ToString();
lblLocation.Text = reader["Location"].ToString();
lblMobileNo.Text = reader["MobileNo"].ToString();
}

else
{
lblFirstName.Text = "";
lblLastName.Text = "";
lblCompanyName.Text="";
lblDepartment.Text="";
lblLocation.Text="";
lblMobileNo.Text="";

ScriptManager.RegisterStartupScript(this, this.GetType(), "RunCode", "javascript:alert('Employee No. not exists,  please try again.');", true);

}

when i click search button after entering employee No. The First Name and Last Name must be combined and must be displayed as Sandeep Kumar.

here, First Name is Sandeep and Last Name is Kumar.
But it should be displayed as Sandeep Kumar.

Please help ..
THANKS
Posted
Updated 16-Mar-14 0:54am
v2

It's pretty simple using C#. ;)
C#
string name = string.empty;

f (reader.Read())
{
    lblCompanyName.Text = reader["CompanyName"].ToString();
    lblDepartment.Text = reader["Department"].ToString();
    lblLocation.Text = reader["Location"].ToString();
    lblMobileNo.Text = reader["MobileNo"].ToString();
    
    name = reader["FirstName"].ToString() + " " + reader["LastName"].ToString();
    nameLbl.Text = name;
}


-KR
 
Share this answer
 
Try:
C#
cmd.CommandText = "SELECT FirstName + ' ' + LastName, CompanyName, Department, Location, MobileNo from ResidentTable where EmployeeNo='" + TxtSearch.Text + "'";


But please, don't do that! Do not concatenate strings to build a SQL command. It leaves you wide open to accidental or deliberate SQL Injection attack which can destroy your entire database. Use Parametrized queries instead.

C#
cmd.CommandText = "SELECT FirstName + ' ' + LastName, CompanyName, Department, Location, MobileNo from ResidentTable where EmployeeNo=@EN";
cmd.Parameters.AddWithValue("@EN", TxtSearch.Text);
 
Share this answer
 
Comments
Abhinav S 16-Mar-14 7:13am    
Of course. 5.
Software Engineer 892 16-Mar-14 7:20am    
But how to concat and read from database am using this ?
lblFirstName.Text = reader["FirstName"].ToString();
lblLastName.Text = reader["LastName"].ToString();
OriginalGriff 16-Mar-14 7:29am    
Change it slightly:
cmd.CommandText = "SELECT FirstName + ' ' + LastName AS [Full Name], FirstName, LastName, CompanyName...
Then
lblFirstName.Text = reader["FirstName"].ToString();
lblLastName.Text = reader["LastName"].ToString();
lblFullName.Text = reader["Full Name"].ToString();

Alternatively, leave the SELECT as you had it (but parameterized) and do this:
lblFirstName.Text = reader["FirstName"].ToString();
lblLastName.Text = reader["LastName"].ToString();
lblFullName.Text = lblFirstName.Text + " " + lblLastName.Text;
Or
lblFirstName.Text = reader["FirstName"].ToString();
lblLastName.Text = reader["LastName"].ToString();
lblFullName.Text = string.Format("{0} {1}", lblFirstName.Text, lblLastName.Text);
This is quite easy to do -
SQL
cmd.CommandText = "SELECT FirstName + LastName FullName, FirstName,LastName,CompanyName,Department,Location,MobileNo from ResidentTable where EmployeeNo='" + TxtSearch.Text + "'";
 
Share this answer
 
Comments
Software Engineer 892 16-Mar-14 7:20am    
But how to concat and read from database am using this ?
lblFirstName.Text = reader["FirstName"].ToString();
lblLastName.Text = reader["LastName"].ToString();
Abhinav S 16-Mar-14 7:25am    
Do the concatenation at the database level itself.
lblFirstName.Text = Convert..ToString(reader["FullName"]);

lblFirstName will then contain the full name.
//Do this at query level
//You should use ISNULL() function too becasue in the case when FirstName or LastName will be null then it will replace that null with ''
//Best of luck


SqlConnection con = new SqlConnection(_connString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "SELECT ISNULL(FirstName,'') +' '+ISNULL(LastName,'') AS FullName, FirstName,LastName,CompanyName,Department,Location,MobileNo from ResidentTable where EmployeeNo='" + TxtSearch.Text + "'";

using (con)
{
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
if (reader.Read())
{
//lblFullName.Text = reader["FullName"].ToString();
lblFirstName.Text = reader["FirstName"].ToString();
lblLastName.Text = reader["LastName"].ToString();
lblCompanyName.Text = reader["CompanyName"].ToString();
lblDepartment.Text = reader["Department"].ToString();
lblLocation.Text = reader["Location"].ToString();
lblMobileNo.Text = reader["MobileNo"].ToString();
}

else
{
lblFirstName.Text = "";
lblLastName.Text = "";
lblCompanyName.Text="";
lblDepartment.Text="";
lblLocation.Text="";
lblMobileNo.Text="";

ScriptManager.RegisterStartupScript(this, this.GetType(), "RunCode", "javascript:alert('Employee No. not exists, please try again.');", true);

}
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900