PDA

View Full Version : اشکال در پر نمودن دیتا ست



salman_arak
سه شنبه 30 مرداد 1386, 13:39 عصر
با سلام
من یه برنامه وبی نوشتم و می خوام که توش usernameو password کاربران رو کنترل کنم . برای این کار من یه دستو ر select در data adaptor نوشتم و اونو در یه dataset پر می کنم . اگه یه نفر عضو باشه که وارد صفحه خودش می شه اما اگه نتیجه این select خالی باشه نمی تونه ds منو پر کنه و من می خوام یه پیام به این افراد بده اما نمی دونم در شرط ifام چی بنویسم و در این مورد خطای زیر رو می ده به نظر شما من تو شرط if ام چی بنویسم؟
ممنون .

mehdi.mousavi
سه شنبه 30 مرداد 1386, 13:47 عصر
با سلام
من یه برنامه وبی نوشتم و می خوام که توش usernameو password کاربران رو کنترل کنم . برای این کار من یه دستو ر select در data adaptor نوشتم و اونو در یه dataset پر می کنم . اگه یه نفر عضو باشه که وارد صفحه خودش می شه اما اگه نتیجه این select خالی باشه نمی تونه ds منو پر کنه و من می خوام یه پیام به این افراد بده اما نمی دونم در شرط ifام چی بنویسم و در این مورد خطای زیر رو می ده به نظر شما من تو شرط if ام چی بنویسم؟
ممنون .

سلام.
از شرط زیر استفاده کنید:


ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0

البته کدی که نوشتید چون از Dynamic SQL ها استفاده میکنه، خطرناکه.

hdv212
سه شنبه 30 مرداد 1386, 15:45 عصر
دوست عزیز بهتره که برای سرعت بیشتر و عملکرد بهتر از DataReader استفاده کنید، من تابعی رو برای شما نمونه سازی کردم که چک میکنه اگه کاربر باشه مقدار true و اگه نباشه مقدار false رو برمیگردونه :

private bool Check_User_Exist(string userID,string userPass)
{
SqlCommand cmd1 = new SqlCommand("SELECT * FROM form_definecala where userID = '" + userID + "' or userPass = '" + userPass + "'",sqlConnection1);
SqlDataReader dr;
sqlConnection1.Open();
dr = cmd1.ExecuteReader();
if(dr.HasRows)
{
dr.Close();
sqlConnection1.Close();
return true;
}
else
{
dr.Close();
sqlConnection1.Close();
return false;
}
}