تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 3 از 3

نام تاپيک: توضیح در linq

  1. #1
    آخر فروم باز
    تاريخ عضويت
    Jul 2009
    پست ها
    6,351

    پيش فرض توضیح در linq

    سلام،
    عزیزان میتونند چند مورد رو توضیح دهند؟
    من توی تابع Compare مخصوصا مشکل دارم،این از سمت
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تنها یک ورودی میگیرد اما در اون تابع 2 مقار رو بررسی میکنه XوY
    هر بار هم یک شی جدید new میشه!!!
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ترتیب مقایسه و مرتب سازی چطور است؟
    و ObjectDumper چه کاره هست؟ اولین باره میبینم

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  2. #2
    آخر فروم باز
    تاريخ عضويت
    Jul 2009
    پست ها
    6,351

    پيش فرض

    اگر بگوئیم تنها یک شی از

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ایجاد میشود. پس چطور مقایسه رو انجلام میده؟ چون ما در هر بار داریم با لامبدا فقط یکی رو از ورودی میخونیم.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  3. #3
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    هر بار هم یک شی جدید new میشه!!!
    در کد شما برای هر یک بار مرتب سازی یک مجموعه، یک شی ایجاد میشود.

    (درکدشما)
    یعنی اگر من 100 آیتم را بخواهم مرتب کنم فقط یک شی از نوع CaseInsensitiveComparer ایجاد میشود.

    (درکدشما)
    یعنی برای هر یک بار اجرای OrderByDescending یک شی CaseInsensitiveComparer ایجاد میشود، حالا میخواهد در این یک بار، صد آیتم مرتب شود یا هزار آیتم، فرقی ندارد.

    ترتیب مقایسه و مرتب سازی چطور است؟
    ایجاد میشود. پس چطور مقایسه رو انجلام میده؟ چون ما در هر بار داریم با لامبدا فقط یکی رو از ورودی میخونیم.
    شما دو مقدار به تابع Order میدهید.
    1) تابعی که (بصورت لامبدا) سطر اطلاعات را گرفته و فیلد مورد مقایسه را پس میدهد.
    2) تابعی که (بصورت رابط IComparer) که میتواند دو عنصر را مقایسه کند.

    مثلاً کد Order (در یک شرایط بسیار ساده) میتواند دو حلقه تودرتو تشکیل دهد و مدام دوعنصر از ورودی را با هم مقایسه و درصورت نیاز جابجا کند تا مرتب سازی تکمیل شود.

    اصلاً فکر کنید خودتان بخواهید یک فهرست را مرتب سازی کنید!
    چه چیزی نیازی دارید؟ بیش از معیاری برای مقایسه آیتم؟
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    یک لحظه همه اینها را فراموش کنید.
    شما برای یک مرتب سازی سازی یک شی که نوعش را میشناسید و مخصوص همان شی هم کدتان را نوشته اید بالاخره به یک جایی میرسید که متغییری مانند iResult را بدست آورده و بابت جابجایی آیتم ها تصمیم گیری کنید...
    خوب این میشود همین کد بالا ولی برای هر دیتایی !

    ObjectDumper چه کاره هست؟
    ارزش خاصی ندارد فقط نتایج را نشان میدهد یا در استریم متنی چاپ میکند.

  4. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •