PDA

View Full Version : دستور سلکت با شرط گراشتن کاربر



programerinfonet
سه شنبه 08 بهمن 1392, 09:19 صبح
سلام دوشتان
یک نمونه کد هست که من بتونم دستور سلکت رو طبق تصویر زیر طراحی کنم ؟
116029
در واقع میخوام کاربر هر آیتمیو که فعال کرد اون آیتم هم تو فیلتر جستجو باشه
مثلأ شاید کاربر خواست جستجو بر اسا سال و قیمت صورت بگیره یا مثلأ خواست جستجو بر اساس رنگ و برند صورت بگیر و ...

programerinfonet
سه شنبه 08 بهمن 1392, 18:55 عصر
کسی نیست به داد ما برسه ؟؟؟
کمک کنید .!

pesare
سه شنبه 08 بهمن 1392, 20:31 عصر
به نظر من شما حالت های مختلف رو چک کن و برای هر حالت یه Select بنویس مثلا


if(chBerand.checked)
{دستور select مربوطه}
if(chBerand.checked&&chSal.checked)
{دستور Select مربوطه}
...
...
...

علی متقی پور
سه شنبه 08 بهمن 1392, 20:45 عصر
با سلام

نیازی به گذاشتن چک باکس نیست. هر تکت باکسی که کاربر توش دیتا اینتری داشت جزء سلکت خواهد بود و هر کدوم نذاشت یعنی شرطی براش نداره. کدش خیلی ساده میشه. کجاش رو مشکل دارید؟

forodo
سه شنبه 08 بهمن 1392, 21:27 عصر
سلام
یک متغیر تعریف کن. مثلاً a
بعد بگو اگر تکست باکس برند تیک خورده بود اسم ستون برای تکست باکس بریزه داخل a. به هین ترتیب ادامه می دی تا آخر.
بعد داخل سکلت اینجوری می نویسی:

SELECT *
FROM MyTable
Where a

حالا اون a میشه شرط شما.
می تونی بگی اگه a با and شروع شده بود با substring اون رو از بین ببره.
نمی دونم متوجه شدید یا نه.
من اینجوری استفاده کردم و الان توی اتوماسیون اداری می تونه 12 فیلد رو توی جستجو لحاظ کنه کاربر.

programerinfonet
چهارشنبه 09 بهمن 1392, 00:07 صبح
این کدو نوشتم اما خطای Object Cannot Be Cost From DBNull To Other Types رو میده

SqlDataAdapter da1 =
new SqlDataAdapter("SELECT Table_Gallery.Gallery_ID, Table_Gallery.Reg_Date, Table_Model.Model, Table_Gallery.Year, Table_Gallery.Color, Table_Gallery.Price, Table_Gallery.Malek, Table_Gallery.Tell, Table_Gallery.Reg_Type, Table_Gallery.Description, Table_Berand.Berand FROM Table_Berand INNER JOIN Table_Gallery ON Table_Berand.Berand_Id = Table_Gallery.Berand_Id INNER JOIN Table_Model ON Table_Gallery.Model_ID = Table_Model.Model_ID " + sel1 + sel2 + sel6 + sel3 + sel4 + sel5, cn);

بعد همین کد رو تو کوئری اس کیو ال می نویسم اونجا اجرا میگیرم اما تو سی شارپ نه
مشکل کجاست ؟

pesare
چهارشنبه 09 بهمن 1392, 09:44 صبح
تو دستورSelect از متد IsNull استفاده کن ، جاهایی که مقدار Null داری با یه داده ای از نوع فیلدت جایگزین کن ، مثلا اگه فیلد قیمت Null بود 0 جاش بزاره و اگر برند Null بود یه رشته جاش بزاره