PDA

View Full Version : مشکل در search



mary3541
چهارشنبه 20 خرداد 1388, 19:02 عصر
داخل برنامم یک dgv دارم که اطلاعات جدول Teacher رو نمایش میشه
همچنین یک textbox و یک دکمه برای search دارم به صورتی که وقتی فامیلی استاد رو درون textbox مینویسم و روی دکمه search میزنم باید استاد مورد نظر رو داخل dgv نمایش بده
تو دکمه search برنامم کد زیر رو نوشتم


DataTable dt = new DataTable();
dt = objteach.Search(txtSearch.Text);
dgv.DataSource = dt;


برای تابع Search تو لایه bussinessLayer کد زیر رو نوشتم


public DataTable Search(string LastNameFa)
{
DataTable dt = new DataTable();
return objteach.Search(LastNameFa);
}

و توی لایه data کد زیر رو برای Search نوشتم


public DataTable Search(string LastNameFa)
{
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter(" Select * from Teacher where LastNameFa like '%{0}%'",con);
sda.SelectCommand.CommandType = CommandType.Text;
sda.Fill(dt);
return dt;
}

ولی جواب نمیده مشکل کجاست؟

NewFoxStudent
چهارشنبه 20 خرداد 1388, 19:21 عصر
توی دیتا گریدتون قبل از اینکه کاربر سرچ رو بزنه اطلاعات تمام اساتید نمایش داده میشه ؟
اگه اینطوره راه خیلی ساده تری داره
میتونید عملیات سرچ رو تو همون جدولی که به گرید بایند کردید انجام بدید
ولی اگه نمیخواید این کار بکنید بفرمایید نظورتون از جواب نمیده چیه؟

SMRAH1
چهارشنبه 20 خرداد 1388, 19:22 عصر
سلام

1) در لایه bussinessLayer،خط

DataTable dt = newDataTable();
اصلا کاری نمی کنه (اگر حذف بشه، در مسئله تغییری ایجاد نمی کنه) .البته مشخص نکردید objteach هم در این تابع چی هست!!
2) دستور تون غلطه.بهتر به جای خط :

SqlDataAdapter sda = newSqlDataAdapter(" Select * from Teacher where LastNameFa like '%{0}%'",con);
از کد زیر استفاده کنید

string strFilter = String.Format("Select * from Teacher where LastNameFa like '%{0}%'",LastNameFa);
SqlDataAdapter sda = newSqlDataAdapter(strFilter ,con);موفق باشید

NewFoxStudent
چهارشنبه 20 خرداد 1388, 19:23 عصر
در ضمن توی کدتون تو لایه Business از یه آبجکت به نام objTeach استفاده کردید این شی به objTeach توی دکمه سرچ ارتباطی داره؟

mary3541
چهارشنبه 20 خرداد 1388, 19:40 عصر
در ضمن توی کدتون تو لایه Business از یه آبجکت به نام objTeach استفاده کردید این شی به objTeach توی دکمه سرچ ارتباطی داره؟



public Data_Layer.dlTeacher objteach;

توی لایه business



public Business_Layer.blTeacher objteach;

توی فرمم

mary3541
چهارشنبه 20 خرداد 1388, 19:41 عصر
2) دستور تون غلطه.بهتر به جای خط :

SqlDataAdapter sda = newSqlDataAdapter(" Select * from Teacher where LastNameFa like '%{0}%'",con);
از کد زیر استفاده کنید

string strFilter = String.Format("Select * from Teacher where LastNameFa like '%{0}%'",LastNameFa);
SqlDataAdapter sda = newSqlDataAdapter(strFilter ,con);موفق باشید

این کار رو کردم ولی جواب نداد

SMRAH1
چهارشنبه 20 خرداد 1388, 19:46 عصر
سلام

نمونه کد بگذار تا بیشتر بشه کمک کرد!

mary3541
چهارشنبه 20 خرداد 1388, 19:53 عصر
سلام

نمونه کد بگذار تا بیشتر بشه کمک کرد!

-----------مشکلم حل شد ------------------ ممنون