کنترلر های Partial در MVC

گاهی لازم است تا بتوانیم کنترلری از جنس partial داشته باشیم یکی از اهداف ما برای ساخت این گونه از کنترلر ها تغییر و گسترش دادن یک کنترلر بدون کدنویسی در داخل خود آن کنترلر می باشد. برای این کار این مقاله را مطالعه نمایید.

کنترلر های Partial در MVC

یکی از اهداف ما برای ساخت این گونه از کنترلر ها تغییر و گسترش دادن یک کنترلر بدون کدنویسی در داخل خود آن کنترلر می باشد. ما می توانیم کنترلرهای Partial بسازیم.

برای این کار یک پروژه MVC ساخته و یک کنترلر با نام "ABCController" به آن اضافه می کنیم.

حالا کنترلر را Partial می کنیم (کلمه partial را مانند کد زیر اضافه می کنیم):

using System.Web.Mvc;    
namespace HtmlInjectInMvc.Controllers    
{    
    public partial class ABCController: Controller    
    {    
        public ActionResult Index()     
        {    
            return View();    
        }    
    }    
} 

یک ویو برای آن ساخته و آن را Index نامگذاری می نماییم.

حالا یک کنترلر دیگر ساخته و آن را xyzController نامگذاری می کنیم.

برای کنترلر xyzController یک ویو ساخته و آن را Index نامگذاری می نماییم. حالا همانطور که در شکل ملاحظه می کنید کنترلر "ABCController" را در این جا هم ازنوع پارشیال(Partial) تعریف کرده و یک ویو برای آن ساخته و آن را About نامگذاری می نماییم.

    using System.Web.Mvc;    
    namespace HtmlInjectInMvc.Controllers    
    {    
        public class xyzController: Controller    
        {    
            public ActionResult Index()     
            {    
                return View();    
            }    
        }    
        public partial class ABCController: Controller    
        {    
            public ActionResult About()     
            {    
                ViewBag.Name = "Bardia ojaghi";    
                return View();    
            }    
        }    
    }  

حال برنامه را اجرا می گیریم.

خروجی :

 

 

 

یکی دیگر از اهداف استفاده از کنترلر های پارشیال برای زمانی است که می خواهیم به صورت تیمی کار کنیم. برای این کار یک کنترلر از جنس پارشیال تعربف کرده و همگی به آن دسترسی خواهند داشت و هر شخص می تواند روی قسمتی از آن کنترلر کار کند. برای مثال کنترلر Product قسمت ProductSettings