我想問更多使用數據網格將數據從SQL Server顯示到WinForm。 我一直在創造一個DataGrid和存儲過程來顯示數據是如何使用C#+數據網格顯示數據SQL Server
ALTER PROC [dbo].[SP_GetData]
AS
SELECT nama , nim
FROM tabledata
和我創建訪問數據庫和存儲過程在C#中的功能
string Sp_Name = "dbo.SP_GetData";
SqlConnection SqlCon = new SqlConnection("Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBMahasiswa;Data Source=.");
SqlCon.Open();
SqlCommand SqlCom = new SqlCommand(Sp_Name , SqlCon);
SqlCom.CommandType = CommandType.StoredProcedure;
List<mahasiswaData> listMahasiswa = new List<mahasiswaData>();
using (SqlDataReader sqlDataReader = SqlCom.ExecuteReader())
{
if (sqlDataReader.HasRows)
{
while (sqlDataReader.Read())
{
mahasiswaData DataMhs = new mahasiswaData();
DataMhs.Nama = sqlDataReader["Name"].ToString();
DataMhs.Umur = Convert.ToInt32(sqlDataReader["Age"]);
listMahasiswa.Add(DataMhs);
}
}
}
SqlCon.Close();
return listMahasiswa;
最後,在顯示按鈕,我添加此代碼
dgvmahasiswa.DataSource = new MahasiswaDB().LoadMahasiswa();
有人可以告訴我哪裏是故障或替代品嗎?
非常感謝你! :d
究竟是什麼問題呢?除了建議進行一些重構,不要在catch塊中返回null(你至少應該記錄錯誤,以便知道事情是否出錯),以及更多地使用using關鍵字,這看起來好像會起作用。另外請注意,如果您的查詢運行但沒有返回任何行,您只需返回一個空列表mahasiswa – dash 2012-04-22 14:49:03
非常感謝評論:) :) 我已經添加了try - catch以防止出現一些錯誤.. 但是,我仍然總是收到虛假的回報.. 僅供參考,我已經添加了一些數據到數據庫中的表.. – pegasustech 2012-04-23 04:20:22