متدهای توسعه یافته و کلمات کلیدی در LINQ
برای استفاده از متدهای LINQ، قبل از هر کاری ابتدا فضای نام زیر را به پروژه خود بیفزاید :
Using System.Linq;
LINQ دارای تعدادی متد و کلمه کلیدی است که در جدول زیر نام و کاربرد آنها آمده است :
نوع | نام | توضیح |
کلمه کلیدی | ascending | عناصر یک مجموعه را به صورت صعودی مرتب می کند. |
descending | عناصر یک مجموعه را به صورت نزولی مرتب می کند. | |
group-by | با استفاده از این عبارت می توان نتایج را به قسمت های مختلف تقسیم کرد. | |
let | در حکم یک متغیر است که می توان نتایج حاصل از یک پرس و جو را در آن قرار داده و در قسمت های بعدی کد از آنها استفاده کرد. | |
orderby | نحوه مرتب سازی نتایج را مشخص می کند. | |
select new | با استفاده از این عبارت می توانیم اشیاء جدیدی از یک نوع بی نام ایجاد کنیم. | |
متد توسعه یافته | Aggregate | یک متد را به عنوان پارامتر دریافت کرده و بر اساس ان با عناصر آرایه رفتار می کند. |
All | اگر عناصر یک مجموعه، مشمول یک شرط شوند مقدار true و در غیر اینصورت مقدار false را بر می گرداند. | |
Any | همه عناصر یک آرایه را که با یک شرط خاص برابری کنند، مشخص می کند. | |
AsEnumerable | از این متد برای تبدیل یک نوع از IEnumerable<T> به نوع دیگری از IEnumerable<T> استفاده می شود. یکی از ویژگی های این عملگر، استفاده از شرط های Where در Table های LINQ to SQL می باشد، زیرا برخی از دستورات NET. داخل شرط های Table ها در LINQ to SQL قابلیت استفاده را ندارد. | |
AsParallel | مشخص می کند که پرس و جوهای بعد از این متد باید به صورت Parallel یا موازی اجرا شوند. | |
Average | برای به دست آوردن میانگین یک سری از اعداد به کار می رود. | |
Cast | از این متد در مواقعی که بخواهیم عناصر یک لیست را به نوعی دیگر تبدیل کنیم استفاده می شود. | |
Concat | این متد دو لیست را با یکدیگر ادغام می کند. | |
Contains | این متد تعیین می کند که لیست دارای عضوی برابر با عضو تعیین شده می باشد یا خیر. | |
Count | تعداد عناصر یک لیست یا آرایه را بر می گرداند. | |
DefaultIfEmpty | اگر یک مجموعه تهی باشد، مقدار پیشفرض مربوط به مجموعه را بر می گرداند. مثلا اگر نوع یک مجموعه تهی int باشد، مقدار صفر را بر می گرداند. | |
Distinct | عناصری تکراری از مجموعه را حذف می کند . | |
ElementAt | برای به دست آوردن یک عنصر با یک اندیس خاص به کار می رود. | |
ElementAtOrDefault | برای به دست آوردن یک عنصر با یک اندیس خاص به کار می رود. | |
Except | عناصری از مجوعه اول را بر می گرداند که در مجموعه دوم وجود ندارند . | |
First | اولین عنصر از مجموعه را برمی گرداند . در صورتی که مجموعه خالی باشد باعث ایجاد خطا می گردد . | |
FirstOrDefault | همانند متد First می باشد با این تفاوت که اگر مجموعه خالی باشد یک مقدار پیش فرض با توجه به data type مربوطه بر می گرداند .می تواند برای از بین بردن استثناءها مورد استفاده قرار گیرد . | |
GroupBy | برای گروه بندی عناصر یک مجموعه به کار می رود. | |
GroupJoin | یک سری از عناصر را دریافت کرده و بر اساس یک کلید مشخص مرتب می کند و یک مجموعه گروه بندی شده به صورت |
|
Intersect | عناصر مشترک در دو مجموعه را بر می گرداند. | |
Join | عناصر دو مجموعه را بر اساس یک شرط خاص با هم ادغام می کند. | |
Last | آخرین عنصر از مجموعه را برمی گرداند . اگر مجموعه دارای هیچ عنصری نباشد باعث ایجاد استثنا خواهد شد . | |
LastOrDefault | همانند متد Last می باشد با این تفاوت که اگر مجموعه خالی باشد ، یک مقدار پیش فرض با توجه به نوع داده مبداء را بر می گرداند . | |
Max | بزرگترین عدد یک مجموعه را بر می گرداند. | |
Min | کوچکترین عدد یک مجموعه را بر می گرداند. | |
OfType | عناصر یک مجموعه را بر اساس نوعی که ما می خواهیم بر می گرداند. | |
OrderBy | از این متد برای مرتب کردن هر مجموعه ای به صورت صعودی ، بر اساس عبارت لامبدایی که به آن پاس می دهیم استفاده می شود . قطعه کد زیر نحوه مرتب کردن مجموعه را نشان می دهد. | |
OrderByDescending | این متد برای مرتب سازی به صورت نزولی مورد استفاده قرار می گیرد ، برعکس OrderBy می باشد . | |
Reverse | برای برعکس کردن یک مجموعه استفاده می شود . عنصر اول به آخرین عنصر و آخرین عنصر به اولین عنصر تغییر مکان داده خواهد شد و برای بقیه عناصر همین روال طی خواهد شد . | |
Select | این متد یک متد بی نام را به عنوان پارامتر دریافت کرده و بر اساس آن عناصر یک مجموعه را بر می گرداند. | |
SelectMany | این متد بر اساس دستور تعریف شده در پارامتر، عناصر را از مجموعه ی مورد پرس و جو انتخاب کرده و در خروجی نمایش می دهد. | |
SequenceEqual | عناصر دو مجموعه را با هم مقایسه می کند، اگر برابر باشند مقدار true و در غیر اینصورت مقدار false را بر می گرداند. | |
Single | در صورتی که فقط یک عنصر با شرط تعیین شده درست باشد آن عنصر از مجموعه را بر می گرداند . اگر بیش از چند عنصر با شرط ورودی ما درست باشد باعث ایجاد استثناء خواهد شد . | |
SingleOrDefault | همانند متد single می باشد با این تفاوت که اگر هیچ عنصری در مجموعه با شرط ما پیدا نشود و یا مجموعه خالی باشد ، مقدار پیش فرض را با توجه به data type مورد نظر بر می گرداند . | |
Skip | عناصر بعد از تعداد مشخصی از عناصر را بر می گرداند. | |
SkipWhile | عناصر یک مجموعه که مشمول یک شرط خاص باشند را نادیده می گیرد. | |
Sum | جمع عناصر یک لیست یا آرایه را بر می گرداند. | |
Take | تعداد عناصر مشخصی از یک مجموعه را بر می گرداند. | |
TakeWhile | عناصری از یک مجموعه که مشمول یک شرط خاص شوند را بر می گرداند. | |
ToArray | این متد عناصر یک نوع IEnumerable را به آرایه تبدیل می کند. | |
ToDictionary | این متد لیست داده شده را به نوع Dictionary<Tkey,TValue> تبدیل می کند. | |
ToList | مجموعه موجود از نوع IEnumerable<T> را به نوع List<T> تبدیل می کند. | |
ToLookup | این متد لیست داده شده را به نوع Lookup<Tkey,TElement> تبدیل می کند، فرق Lookup با Dictionary در این است که کلاس Lookup از نوع One-To-Many می باشد، یعنی یک کلید می تواند به چندین Element اشاره کنید. | |
Union | برای اجتماع دو مجموعه به کار می رود. | |
Where | عناصر یک مجموعه را بر اساس نیاز ما فیلتر می کند. | |
Zip | یک متد به عنوان پارامتر دریافت کرده و بر اساس آن با عناصر دارای اندیس مشابه در دو آرایه رفتار می کند. |
سلام خسته نباشید
توقسمت پرسش وپاسخ مطرح کردم ولی اونجا کسی جواب نمیده
اگه لطف کنید جواب بدین ممنونتون میشم
سلام خسته نباشیدخدمت آقای ابراهیمی و تیم زحمت کش سایت
چند تا سوال داشتم از حضورتون
1-میخوام یه ستون دیتابیس رو تو کامبو باکس نما یش بدم البته با استفاده از لینکیو
2- یه کدی واسه گرفتن و ذخیره کردن عکس با لینکیو توی سایت موجود هست ولی یه مشکلی که هست اینه که موقع گرفتن عکس از سیستم هم زمان عکس رو ذخیره میکنه ولی من میخوام که عکس رو بگیرم و دستور ذخیره رو روی دکمه دیگه بنویسم.
3-و یه سوال دیگه که قبلا هم مطرح کرده بودم این که دستور ساخت تیبل در دیتابیس با استفاده از کد رو موقع برنامه نویسی میخواستم
ممنونتون میشم که کمکم کنید
با عرض سلام خدمت شما دوست عزیز
ممنون میشم سوالتونو تو بخش پرسش و پاسخ ((http://www.w3-farsi.com/forum)) مطرح بفرمایید