ویوهای داینامیک برای روابط چند به چند در EF Core

ویوهای داینامیک برای روابط چند به چند در EF Core

در آموزش ویوهای داینامیک برای روابط چند به چند در EF Core، نحوه نمایش داده‌های چند به چند در Viewهای ASP.NET Core بررسی خواهد شد. ویو های ایجاد شده شامل:  ویو و کنترلر مربوط به درس و همچنین انتخاب واحد دانشجویان میشود.

اکشن های اضافه و حذف یک درس

این دو اکشن کنترلر (Action Method) مربوط به کنترل اضافه کردن و حذف یک درس برای یک دانشجو در ASP.NET Core 9 هستند و از طریق فرم POST کار می‌کنند. در ادامه به صورت کامل و مرحله‌به‌مرحله کدها را توضیح می‌دهم:

  • متد AddCourse
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> AddCourse(int StudentId, int CourseId)
{
    await _studentCourseService.AddStudentCourse(StudentId, CourseId);
    return RedirectToAction(nameof(Details), new { id = StudentId });
}
  • متد RemoveCourse
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> RemoveCourse(int StudentId, int CourseId)
{
    await _studentCourseService.RemoveStudentCourse(StudentId, CourseId);
    return RedirectToAction(nameof(Details), new { id = StudentId });
}

این دو متد با هم یک سیستم ساده برای مدیریت دروس دانشجو فراهم می‌کنند. منطق اصلی مربوط به عملیات اضافه یا حذف در سرویس StudentCourseService پیاده‌سازی شده، که این باعث رعایت اصل تفکیک مسئولیت‌ها (SRP) در معماری نرم‌افزار می‌شود.

اکشن های اضافه و حذف یک دانشجو

مشابه کد قبلی هستند اما این بار تمرکز روی اضافه یا حذف دانشجو از یک درس هست (برعکس حالت قبلی که اضافه/حذف درس برای دانشجو بود). این تفاوت کوچکی در منطق و جهت نمایش در رابط کاربری ایجاد می‌کند.

  • متد AddStudent
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> AddStudent(int StudentId, int CourseId)
{
    await _studentCourseService.AddStudentCourse(StudentId, CourseId);
    return RedirectToAction(nameof(Details), new { id = CourseId });
}
  • متد RemoveStudent
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> RemoveStudent(int StudentId, int CourseId)
{
    await _studentCourseService.RemoveStudentCourse(StudentId, CourseId);
    return RedirectToAction(nameof(Details), new { id = CourseId });
}

این متد دقیقاً مشابه متد قبلی است، ولی با هدف حذف یک دانشجو از یک درس خاص.  از لحاظ عملکرد، ارتباط بین دانشجو و درس را حذف می‌کند (مثلاً ردیف مربوطه در جدول میانی بین دانشجویان و دروس را حذف می‌کند). پس از حذف، کاربر به صفحه جزئیات درس هدایت می‌شود تا بتواند لیست جدید دانشجویان آن درس را ببیند.

مشاهده در آپارات یا یوتیوب

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

تماشای ویدیوی ویوهای داینامیک برای روابط چند به چند در EF Core در آپارات و یوتیوب

اشتراک‌گذاری با یک کلیک

با یک کلیک، محتوای این صفحه را در شبکه‌های اجتماعی، ایمیل یا پیام‌رسان‌های مورد علاقه‌تان به‌سرعت به اشتراک بگذارید.

اشتراک‌گذاری صفحه ویوهای داینامیک برای روابط چند به چند در EF Core در شبکه‌های اجتماعی

نظرات شما برای ما ارزشمند است

متاسفانه تاکنون پیامی برای این مطلب ثبت نشده است. شما اولین شخصی باشید که پیام می‌گذارد.

نظرات کاربران

فرم افزودن دیدگاه

با ارسال نظرات خود ما را در ایجاد محتوای بهتر کمک کنید.

با خدمات تهران آی تی آشنا شوید

تهران آی تی با افتخار خدمات زیر را ارائه می‌دهد.