2012-06-15 13 views
5

Kiedy tworzę nowy kontroler w Visual Studio z MVC wygeneruje automatycznie następujący kod:Tworzenie nowej klasy kontrolera w Visual Studio z MVC?

public class Default1Controller : Controller 
{ 
    // 
    // GET: /Default1/ 

    public ActionResult Index() 
    { 
     return View(); 
    } 

} 

Moja Default1Controller dziedziczenia z kontrolerem, ale pracuję z klasy BaseController i zawsze muszę pamiętać, aby zmienić dziedziczenia. Czy jest możliwe, aby można było zmodyfikować lub utworzyć nowy szablon, aby automatycznie wygenerować bardziej szczegółowy kod dla mojego projektu?

public class Default1Controller : BaseController 
{ 
    // 
    // GET: /Default1/ 

    public ActionResult Index() 
    { 
     return View(); 
    } 

} 

Dziękuję

+0

Musisz zastąpić szablon T4 i może również użyć rusztowania dla zwiększenia produktywności. Link jest zamieszczony w mojej odpowiedzi. –

Odpowiedz

4

Trzeba zmodyfikować szablon T4, który jest na podstawie polecenia "Dodaj kontroler".

Idź do \ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ ItemTemplates \ CSharp \ Web \ MVC 3 \ CodeTemplates \ AddController \ (zamień z wersji VS i MCV) i zmodyfikować Controller.tt

The linia public class <#= mvcHost.ControllerName #> : Controller powinna stać public class <#= mvcHost.ControllerName #> : BaseController

Więcej szczegółów można znaleźć na Scott Hanselman na blog

3

powinien mieć możliwość modyfikowania szablonów kontroler T4 znajdujące się w folderze tak:

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC 3\CodeTemplates\AddController 

Wystarczy zmienić linię

public class <#= mvcHost.ControllerName #> : Controller 

do

public class <#= mvcHost.ControllerName #> : BaseController 

Również linki dostarczone przez Asif są użyteczne.

Powiązane problemy