نمایش نتایج 1 تا 6 از 6

نام تاپیک: جستجو در 5 جدول و نمایش خروجی در یک دیتا گرید با Entity FrameWork

  1. #1

    Question جستجو در 5 جدول و نمایش خروجی در یک دیتا گرید با Entity FrameWork

    سلام خدمت دوستان بنده یک بانک اطلاعاتی دارم که با Entity FrameWork بهش وصلم
    حالا یک جستجو داخل برنامه گذاشتم می خوام هر چی داخل تکست باکس سرچ نوشتم بره داخل این 5 تا جدول بگرده و نتیجه رو نشونم بده .. حالا نمی دونم چطور واسه این 5 تا جدول یه کوئری بنویسم
    لطفا راهنمایی کنید

  2. #2

    نقل قول: جستجو در 5 جدول و نمایش خروجی در یک دیتا گرید با Entity FrameWork

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

  3. #3
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: جستجو در 5 جدول و نمایش خروجی در یک دیتا گرید با Entity FrameWork

    نقل قول نوشته شده توسط mamadcity مشاهده تاپیک
    دوستان کسی هست قبلا این کار رو انجام داده باشه ؟
    شما برای انجام این کار بایستی یه فیلد مشترک در تمامی جداولتون داشته باشین یا اینکه به هر حال یه ارتباط چند جانبه میانشان برقرار کنین
    سپس با یه کوری به صورت join می تونین داده هارو از این جداول واکشی کنین !!! به عنوان مثال این کوئری که برای فراخوانی اطلاعات از 3 جدول می باشد..... این روش رو می شه روی هر چندتا جدول که داشته باشین اجرا کرد به شرط وجود یک ارتباط منطقی :

    var balance = (from a in context.Accounts
    join c in context.Clients on a.UserID equals c.UserID
    join d in context.Descriptions on c.ClientID equals d.ClientID
    where d.DescriptionID == yourDescriptionID
    select a.Balance)
    .SingleOrDefault();


    ویا :

    var query = from p1 in context.P1s
    join p2 in context.P2s on p1.Key equals p2.Key into list1
    from l1 in list1.DefaultIfEmpty()
    join p3 in context.P3s on l1.Key equals p3.Key into list2
    from l2 in list2.DefaultIfEmpty()
    select new { p1.....}


    , واین کوئری برای join بیش از 3 جدول :

    var match = from t1 in context.cKNA1
    join t2 in context.cKNB1 on
    new { t1.KUNNR, t1.RowId } equals
    new { t2.KUNNR, t2.RowId }
    join t3 in context.cKNVV on
    new { t2.KUNNR, t2.RowId } equals
    new { t3.KUNNR, t3.RowId }
    join t4 in context.cKNVH on
    new { t3.KUNNR, t3.RowId } equals
    new { t4.KUNNR, t4.RowId }
    SELECT t1.KUNNR;

  4. #4

    نقل قول: جستجو در 5 جدول و نمایش خروجی در یک دیتا گرید با Entity FrameWork

    راستش زیاد متوجه نشدم

  5. #5
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: جستجو در 5 جدول و نمایش خروجی در یک دیتا گرید با Entity FrameWork

    نقل قول نوشته شده توسط mamadcity مشاهده تاپیک
    راستش زیاد متوجه نشدم
    خیلی ساده است
    ما وقتی دوتا جدول رو join می کنیم ابتدا اون دوتا جدول رو نام می بریم وبعد به نکته اشتراکشون اشاره می کنیم
    حال وقتی تعدا د جدولهامون زیاد شد باز از همون شیوه استفاده می کنیم
    یعنی جدول اول و دوم رو نام می بریم و فیلد مشترکشون رو به عنوان رابط در نظر می گیریم
    بعد جدول دوم رو با جدول سوم و فیلد مشترکشون join می کنیم
    بعد جدول سوم رو با جدول چهارم join می کنیم براساس فیلد مشترکشون و الی آخر
    با این شرط که همیشه مابین هر جفت جدول نکته مشرک باشه مانند حلقه های زنجیر

    حالا به این جداول توجه کنین ، البته ارتباط این چهار جدول زیاد منطقی نیست و صرفا جهت رساندن مطلب می باشد و شما با ایجاد ارتباط بهتر و منطقی تر می تونین به نتایج زیباتری برسین :

    5.jpg

    واین کوئری برای این 4 جدول :

    var match = from t1 in context.person_inf
    join t2 in context.kharid on t1.ncode equals t2.ncode
    join t3 in context.kala on t2.k_code equals t3.k_code
    join t4 in context.anbar on t3.anbar_id equals t4.anbar_id
    select new
    {
    name = t1.fname,
    family = t1.lname,
    mally = t1.ncode,
    kala = t3.k_name,
    amount = t2.amount,
    fee = t3.fee,
    total = t2.total,
    ambar=t4.anbar1

    };


    واین نتیجه کوئری از همون چهار جدول :

    6.jpg
    فایل های ضمیمه فایل های ضمیمه

  6. #6

    نقل قول: جستجو در 5 جدول و نمایش خروجی در یک دیتا گرید با Entity FrameWork

    ی راه دیگه هم داری! ی view بساز و بصورت ویزارد فیلدهای مورد نظرت رو انتخاب میکنی و بجا join کردن جداول از view انتخاب میکنی رکوردهات رو (view رو باید تو بانک بسازی) ولی خب join کردن رو حتما یاد بگیر

تاپیک های مشابه

  1. پاسخ: 5
    آخرین پست: جمعه 22 مهر 1390, 22:51 عصر
  2. پاسخ: 2
    آخرین پست: دوشنبه 18 بهمن 1389, 23:45 عصر
  3. سوال: ایا میشه دو تا جدول رو هم زمان تو دیتا گرید نمایش داد
    نوشته شده توسط Masoudse7en در بخش برنامه نویسی در 6 VB
    پاسخ: 6
    آخرین پست: دوشنبه 22 شهریور 1389, 12:52 عصر
  4. جستجو بر روی جدول
    نوشته شده توسط در بخش VB.NET
    پاسخ: 6
    آخرین پست: چهارشنبه 19 شهریور 1382, 21:18 عصر
  5. جستجو بر روی جدول
    نوشته شده توسط در بخش VB.NET
    پاسخ: 6
    آخرین پست: جمعه 17 مرداد 1382, 11:09 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •