2015-06-20 1 views
0

Как я могу создать условие для объекта и добавить в datagridview?Создать условие из значения SqlDataReader, а затем добавить в datagridview

Это мой код ..

dataGridView1.Rows.Clear(); 

Connection.sqlConnection.Close(); 
Connection.Connector(server, database, user, password); 
Connection.sqlCommand.Connection = Connection.sqlConnection; 
Connection.sqlCommand.CommandType = CommandType.Text;    
Connection.sqlCommand.CommandText = "SELECT ID,KOSAT,KETERANGAN,DELETEFLAG FROM KOSAT"; 

SqlDataReader kosatList = Connection.sqlCommand.ExecuteReader(); 

while (kosatList.Read()) 
{  
    // this.................... 
    dataGridView1.Rows.Add(kosatList["ID"], kosatList["KOSAT"], kosatList["KETERANGAN"], kosatList["DELETEFLAG"]); 
    // until this................ 
} 

Console.WriteLine("aaa = "+list); 
Connection.sqlConnection.Close(); 

dataGridView1.ClearSelection(); 
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Selected = true; 

Согласно моему коду ... Я хочу, чтобы создать условие из kosatList["DELETEFLAG"], как это ..

string yesORno; 

if(kosatList["DELETEFLAG"].Equals("Y")) 
{ 
    yesORno = "YES"; 
} 
else if(kosatList["DELETEFLAG"].Equals("N")) 
{ 
    yesORno = "NO"; 
} 

Тогда как я могу добавить yesORno грести dataGridView1?

Я попытался, как это ..

dataGridView1.Rows.Add(kosatList["ID"], kosatList["KOSAT"], kosatList["KETERANGAN"], yesORno); 

, но я получил сообщение об ошибке, потому что Rows.Add() ==> должен быть Object

enter image description here

ответ

2

Я бы просто изменить запрос, чтобы привести в данных, так что вам не нужно манипулировать им:

SELECT ID,KOSAT,KETERANGAN, 
CASE DELETEFLAG 
    WHEN 'Y' THEN 'YES' 
    WHEN 'N' THEN 'NO' 
    ELSE '<your choice>' 
END AS DELETEFLAG 
FROM KOSAT 
Смежные вопросы