錯誤代碼
SqlCommand sql = new SqlCommand(cmd);
SqlConnection conn = new SqlConnection(connStr);
conn.Open();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = sql; // ❌ Command 未關聯 Connection
da.Fill(ds);
修正
da.SelectCommand = sql;
da.SelectCommand.Connection = conn; // ✅ 必須顯式設置
// 或構造時直接關聯
// SqlDataAdapter da = new SqlDataAdapter(sql);
// sql.Connection = conn;
最佳實踐
using (var conn = new SqlConnection(connStr))
using (var cmd = new SqlCommand(cmdText, conn)) // 構造時綁定連接
using (var da = new SqlDataAdapter(cmd)) {
var ds = new DataSet();
da.Fill(ds);
return ds.Tables[0];
}