السلام عليكم
أنا عامل بروسيديور ولما بشغله في السيكوال بيكون سريع مش بياخد لحظة
لكن لما بملى الــ DataTable بتاعتي بتكون بطيئة انا مستخدم الـSqlDataAdapter علشان يملها
if (DBConnection.Connect())
{
SqlCommand cmdSelect = DBConnection.Connection.CreateCommand();
cmdSelect.CommandTimeout = 0;
cmdSelect.CommandType = bTextCommand ? CommandType.Text : CommandType.StoredProcedure;
cmdSelect.CommandText = strStoredProcdureName;
if (sqlprmParameters != null && sqlprmParameters.Length > 0)
cmdSelect.Parameters.AddRange(sqlprmParameters);
if (trTrans != null)
cmdSelect.Transaction = trTrans;
SqlDataAdapter daSelect = new SqlDataAdapter(cmdSelect);
DataTable dtResult = new DataTable();
DBConnection.Disconnect();
daSelect.Fill(dtResult);
GC.Collect();
return dtResult;
}
else
return null;
الطئ عند تنفيذ الــ Method
daSelect.Fill(dtResult);
بتاخد حوالي ثانيتين أو 3 بالرغم إن عدد الــ Rows اللي راجعة 1 أو 2
فما المشكلة ؟