View Full Version : سوال: مشکل در فیلتر کردن توسط BindingSource
jafarpalideh
پنج شنبه 25 اردیبهشت 1393, 12:45 عصر
با سلام .
من دیتاگریدم رو به بایندینگ سورس متصل کردم و الان که میخوام روش فیلترکنم ارور میده .
این کد من :
bsVaragh.Filter = " Resid like '%" + textBox1.Text+ "%'";
از این کد هم استفاده کردم ولی نشد :
bsVaragh.Filter = " Resid like '%" + Convert.ToInt32( textBox1.Text) + "%'";
و این هم خطا :
Cannot perform 'Like' operation on System.Int32 and System.String.
jafarpalideh
پنج شنبه 25 اردیبهشت 1393, 13:01 عصر
البته کد پایین جواب میده ولی بالایی هنوز ارور میده !!
if (textBox1.Text == "")
bsVaragh.RemoveFilter();
else
bsVaragh.Filter = "resid='" + (textBox1.Text) + "'";
danialafshari
پنج شنبه 25 اردیبهشت 1393, 14:07 عصر
سلام
bindingSource1.Filter = "FieldName LIKE '" + "%" + txtFind.Text + "%" + "'";
http://barnamenevis.org/showthread.php?410532-%D9%85%D9%86-%DB%8C%D9%87-%DA%A9%D8%AF-%D8%AC%D8%B3%D8%AA%D8%AC%D9%88-%D8%AF%D8%B1-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE-%D8%AF%D8%A7%D8%B1%D9%85-%D9%85%DB%8C%D8%B4%D9%87-%D8%A8%DA%AF%DB%8C%D8%AF-%DA%86%D8%B1%D8%A7-%DA%A9%D8%A7%D8%B1-%D9%86%DA%A9%DB%8C%D9%85%D9%86%D9%87%D8%9F%D8%9F%D 8%9F%D8%9F&p=1830529&viewfull=1#post1830529
jafarpalideh
پنج شنبه 25 اردیبهشت 1393, 14:22 عصر
ممنون بابت پاسختون
ولی متاسفانه باز هم همون ارور رو میده .
من دقیقا کد زیر رو نوشتم .
bsVaragh.Filter = "Resid LIKE '" + "%" + textBox1.Text + "%" + "'";
danialafshari
پنج شنبه 25 اردیبهشت 1393, 15:07 عصر
سلام
توضیحاتتون ناقصه
فیلد Resid نوعش چیه؟
کدی که خودتون گذاشتید " نزاشتید که string شده بود و دلیل ارور هم همین بود
محتویات پوشه debug رو پاک کنید کدتون رو اگه فیلد Resid از نوع int هست به شکل زیر تغییر دهید و پروژه رو Rebuild کنید
bsVaragh.Filter = "Resid LIKE '" + "%" +Convert.ToInt32(textBox1.Text) + "%" + "'";
jafarpalideh
پنج شنبه 25 اردیبهشت 1393, 15:13 عصر
من از VS2008 و sql 2000 استفاده میکنم .
فیلد رسید int هست .
و کد رو باز هم تغییر دادم ولی همون ارور رو میده
bsVaragh.Filter = "Resid LIKE '" + "%" + Convert.ToInt32(textBox1.Text) + "%" + "'";
ولی کد زیر خطا نمیده :
if (textBox1.Text == "") bsVaragh.RemoveFilter();
else
bsVaragh.Filter = "resid='" + (textBox1.Text) + "'";
jafarpalideh
پنج شنبه 25 اردیبهشت 1393, 15:21 عصر
فیلد Kala یه من از نوع NvarChar هست و با دستور زیر درست کار میکنه :
bsVaragh.Filter = " Kala LIKE '" + "%" + textBox1.Text + "%" + "'";
البته این رو باید بگم که من سه تا کمبو باکس دارم که از طریق بایندینگ سورس به دیتابیس وصل شدن و اطلاعات دیتاگرید من رو نمایش میدن .
البته کلا ویزارد کار کردم .
الان وقتی میخوام توسط بایندینگ سورس سرچ انجام بدم و گریدم فیلتر بشه . با فیلد NvarChar موردی ندارم (البته الان تست کردم اینو) ولی وقتی فیلدی که توش Int هست رو سرچ کنم این ارور رو میده !!!
jafarpalideh
جمعه 26 اردیبهشت 1393, 00:56 صبح
دوستان نظری ندارن ؟
danialafshari
جمعه 09 خرداد 1393, 22:57 عصر
دوستان نظری ندارن ؟
فیلد شما باید string باشه
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.