مرتب‌ سازی لیست در ASP.NET Core – جلسه ۵۵

Sort List ASPNET Core MVC - Session55

در این جلسه به مرتب‌ سازی لیست در ASP.NET Core خواهیم پرداخت و روش پیاده‌سازی آن بروی پروژه با معماری MVC را شرح خواهیم داد. همانگونه که میدانید، عملیات مرتب سازی به دو صورت صعودی (Ascending) و یا نزولی (Descending) صورت می‌گیرد. ما در این جلسه تغییراتی برروی پروژه مربوطه اعمال میکنیم تا قادر به اعمال هر دو روش جستجو باشیم. همچنین در این جلسه، از ساختار شرطی Switch Case استفاده خواهیم کرد.

مرتب سازی لیست در ASP.NET Core

برای مرتب سازی لیست، ابتدا کاربر باید درخواست مرتب سازی را به کنترلر و در نهایت به ریپازیتوری ارسال نماید. روشهای مختلفی برای این منظور وجود دارد. ما در این دوره با ارسال درخواست از طریق Query String اقدام میکنیم. برای درک بهتر این موضوع ما به از پروژه وب اپلیکیشن مربوط به این دوره استفاده میکنیم و عملیات مرتب سازی را برروی لیست هزینه‌ها (Cost List) اعمال می‌کنیم.

ابتدا در لیست نامبرده تغییراتی بروی تیترهای Cost و Payment Method اعمال میکنیم تا بتوانیم درخواست مرتب سازی را به کنترلر ارسال نماییم.

همانگونه که در کد فوق مشاهده می‌کنید، تیترهای ذکر شده به صورت لینک در آمده و با استفاده از تگ هلپر asp-route اقدام به ارسال مقادیر مورد نیاز به کنترلر میکنیم. قطعه کد کلی مربوط به نمای Cost/Index در زیر قابل مشاهده میباشد.

حال میبایست درخواست مورد نظر را جهت مرتب سازی بروی لیست اعمال نماییم. برای این کار، ابتدا در متد GetCostList درون اینترفیس و سپس درون ریپازیتوری تغییرات مورد نظر را اعمال میکنیم.

همانگونه که در کد فوق مشاهده می‌کنید، sortby به صورت رشته‌ایی به عنوان مقدار ورودی متد GetCostList اضافه گردیده، حال نیاز به اعمال تغییرات لازم بر‌روی ریپازیتوری می‌باشد.

همانگونه که مشاهده میکنید، در انتهای متد مورد نظر و قبل از ارسال لیست با استفاده از Switch Case مقدار مرتب سازی ارسالی بررسی میگردد و لیست بر اساس آن مرتب میگردد. همچنین نیاز است تغییراتی در کنترلر و اکشن متد مربوطه اعمال کنیم.

با اضافه نمودن مقدار ورودی sortby به Cost/Index و ارسال آن به رپازیتوری، لیست مرتب شده را میتوانیم به نما جهت رندر ارسال نماییم.

در صورت نیاز به جزئیات بیشتر، میتوانید ویدئو آموزشی این جلسه را تماشا نمایید. همچنین برای آگاهی از جلسات بعدی این دوره آموزشی، ما را در اینستاگرام، تلگرام، یوتیوب و آپارات دنبال کنید. ضمنا لیست کامل جلسات در این قسمت در دسترس شما میباشد و سورس کد این جلسه را میتوانید از GitHub ما دانلود نمایید.

تماشای ویدیو در یوتیوب ما

دانلود اسلایدهای آموزشی این جلسه از اینجا

برچسب ها

0 0 رای ها
امتیازدهی به مقاله
guest

0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها
0
افکار شما را دوست داریم، لطفا نظر دهید.x