2011-11-22 54 views
4

我想要一個返回ActionResult的方法,它可以訪問Response/Json和控制器可以從多個控制器訪問和使用的其他東西。MVC3 - Helper方法被幾個控制器使用

任何指針?

謝謝

+0

也許你可以給你究竟在做什麼的例子? –

回答

5

你可以考慮做一個基礎控制器類並繼承它。這允許您從多個控制器使用相同的方法。

我不確定你的MVC體驗水平,但微軟的this文章給出了控制器背後思想的基本基礎以及你可以用它做什麼。並且this問題指向了MVC應用程序的一些廣爲接受的例子。

+0

我沒有想到繼承,我想我可以添加它作爲某種幫助。這是一個很好的解決方案,謝謝 – Madd0g

+0

僅供參考,現在第一個鏈接是孤兒。 – 2015-06-10 17:16:57

+0

@Rubix_Revenge謝謝。指出它可能是控制器上最古老的鏈接,但相關的都不會少。 –

2

從Nick這裏已經指出的擴展是一個非常愚蠢的例子。請注意,HomeController從BaseController繼承。 SomeResult操作將在HomeController中可用。

僅供這裏演示的目的是視圖模型:

public class Customer 
{ 
    public string Name { get; set; } 
    public int Age { get; set; } 
} 

基本控制器:

public class BaseController : Controller 
{ 
    public ActionResult SomeResult() 
    { 
     var customer = new Customer { Name = "Jon", Age = 15 }; 
     return Json(customer, JsonRequestBehavior.AllowGet); 
    } 
} 

家庭控制器從基本控制器繼承:

public class HomeController : BaseController 
    { 

     public ActionResult Index() 
     { 
      return View("Index"); 
     } 
    } 
相關問題