2017-06-17 5 views
0

J'affiche les données dans Gridview à partir de trois tables en utilisant join. Mais je veux changer un champ en utilisant la condition. J'ai gardé mon "statut" comme "1" et "0". Pour "1" je veux afficher "Sélectionné" et pour "0" je veux afficher "Refusé".Modifier la valeur de la colonne à l'aide de la condition après l'affichage de la grille de données

Ci-dessous mon code:

void databind() 
{ 
    string CS = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString; 
    using (SqlConnection con = new SqlConnection(CS)) 
    { 
     con.Open(); 
     SqlCommand cmd = new SqlCommand("select a.applicant_id as 'Applicant ID',a.applicant_name as 'Name',a.status as 'Status',b.staff_Name as 'Reviewed by',c.course_name as 'Course' from tblApplicant a left outer join tblStaff b on a.staff_id=b.staff_id left outer join tblCourse c on a.course_id=c.course_id", con); 
     SqlDataReader dr = cmd.ExecuteReader(); 
     GridView1.DataSource = dr; 
     GridView1.DataBind(); 
    } 
} 

Répondre

0

utiliser cette ligne avec case when clause

SqlCommand cmd = new SqlCommand("select a.applicant_id as 'Applicant ID',a.applicant_name as 'Name',case when a.status=0 then 'Rejected' else 'Selected' end as 'Status',b.staff_Name as 'Reviewed by',c.course_name as 'Course' from tblApplicant a left outer join tblStaff b on a.staff_id=b.staff_id left outer join tblCourse c on a.course_id=c.course_id", con);