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

نام تاپیک: خواندن از دیتابیس بدون لود شدن Relation ها

  1. #1
    کاربر دائمی آواتار maxpayn2
    تاریخ عضویت
    مهر 1385
    محل زندگی
    طبقه سوم - اطاق اول - جولوی مانیتور - روی صندلی
    پست
    1,068

    Question خواندن از دیتابیس بدون لود شدن Relation ها

    سلام
    توی پروژه ASP.Net Core 2.2 یه کوئری دارم به این شکل

    var images = (from i in _context.Images where i.ImageUserId == userId select i).ToListAsync();


    وقتی اجرا میشه images رو میاره به همراه تمام اطلاعات مربوط به جدول Users که با جدول Images ارتباط (Relation) داره . میخوام اطلاعات جدول Users رو بی خیال بشه . چی کار باید بکنم ؟


  2. #2
    کاربر دائمی آواتار shahab_ksh
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تو اطاقم
    پست
    1,388

    نقل قول: خواندن از دیتابیس بدون لود شدن Relation ها

    نقل قول نوشته شده توسط maxpayn2 مشاهده تاپیک
    سلام
    توی پروژه ASP.Net Core 2.2 یه کوئری دارم به این شکل

    var images = (from i in _context.Images where i.ImageUserId == userId select i).ToListAsync();


    وقتی اجرا میشه images رو میاره به همراه تمام اطلاعات مربوط به جدول Users که با جدول Images ارتباط (Relation) داره . میخوام اطلاعات جدول Users رو بی خیال بشه . چی کار باید بکنم ؟

    بخش select رو محدود کنید به ستون های دلخواه

  3. #3
    کاربر دائمی آواتار maxpayn2
    تاریخ عضویت
    مهر 1385
    محل زندگی
    طبقه سوم - اطاق اول - جولوی مانیتور - روی صندلی
    پست
    1,068

    نقل قول: خواندن از دیتابیس بدون لود شدن Relation ها

    نقل قول نوشته شده توسط shahab_ksh مشاهده تاپیک
    بخش select رو محدود کنید به ستون های دلخواه
    ممنون . راستش همین کار رو هم کردم ولی وقتی images رو میخوام return کنم میگه نمیتونم به نوع ImageDto که خودم تعریف کردم و همون پراپرتی هایی رو داره که select میکنم ، کانورت کنم چون ناشناخته هستش

  4. #4

    نقل قول: خواندن از دیتابیس بدون لود شدن Relation ها

    سلام، میتونید یه viewmodel بنویسید که فقط بخشهایی که میخواد رو واکشی کنه

  5. #5
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    اراک
    پست
    230

    نقل قول: خواندن از دیتابیس بدون لود شدن Relation ها

    در
    کوئری گزینه
    AsNoTracking رو اضافه کن مشکلت حل میشه

  6. #6
    کاربر جدید
    تاریخ عضویت
    بهمن 1398
    محل زندگی
    Tehran
    پست
    10

    نقل قول: خواندن از دیتابیس بدون لود شدن Relation ها

    با سلام.

    برای این منظور روش صحیح این هست که برای واکشی اطلاعات به سرور زیاد فشار نیارید.
    پیشنهاد می کنم که از ViewModel برای این منظور در پوشه ViewModel هاتون که در لایه ی YourProjectName.Core هست استفاده کنید.

    در اینجا شما ViewModel با نام ImageViewModel در پوشه ViewModel هاتون ایجاد کنید.
    فیلد هایی از آن Image را که می خواهید واکشی کنید مشخص کنید.
    از طریق تعریف در سرویس مورد نظرتون مثلا اینجا IImageService (به عنوان مثال) متودی به صورت زیر عمل کنید:
    در IImageService یا همون ریپوزیتوری، متودی برای دریافت ایمیل تعریف کنید:
    ImageViewModel GetImageByUserId(int userId)

    در ImageService داریم: (فرض رو بر این گذاشتم که شما دو تا پروپرتی ImageName و CreateDate را در ImageViewModel تعریف کردید.)

    public ImageViewModel GetImageByUserId(int userId){
    return _context.Images.where(i=> i.ImageUserId== userId).select(new ImageViewModel(){
    ImageName=c.imageName,
    CreateDate=i.createDate
    }).ToList();
    }


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

  1. طراحی دیتابیس بدون ایجاد دور در relation و درج مقادیر در دو جدول در یک زمان
    نوشته شده توسط jafarpalideh در بخش تحلیل و طراحی بانک اطلاعات
    پاسخ: 8
    آخرین پست: سه شنبه 20 بهمن 1394, 14:52 عصر
  2. سوال: Relation بین Model ها بدون ذخیره شدن در دیتابیس.
    نوشته شده توسط aliblue در بخش ASP.NET MVC
    پاسخ: 3
    آخرین پست: دوشنبه 15 اردیبهشت 1393, 00:04 صبح
  3. تشخیص relation بین 2 تا table دیتابیس
    نوشته شده توسط djscsi در بخش T-SQL
    پاسخ: 4
    آخرین پست: چهارشنبه 23 آذر 1390, 02:03 صبح
  4. حرفه ای: حذف تمام relation های یک دیتابیس
    نوشته شده توسط goli_database در بخش SQL Server
    پاسخ: 2
    آخرین پست: سه شنبه 07 دی 1389, 17:20 عصر
  5. سوال: چگونگی ایجاد Relation در بین جداول موجود در یک دیتا بیس در InterBase ؟
    نوشته شده توسط BORHAN TEC در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 0
    آخرین پست: سه شنبه 17 فروردین 1389, 18:56 عصر

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

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