2008-12-27 4 views
5

Ich weiß, dass ASP.NET MVC mir erlauben wird, in verschiedenen View-Engines zu wechseln, die andere Leute erstellt haben, aber ich frage mich, wie kann ich meine eigene View-Engine erstellen?Wie schreiben Sie Ihre eigene View Engine für ASP.NET MVC?

Mehr Info: Wir haben unsere eigenen Webformulare basierte CMS und das wichtigste Verkaufsargument über MVC ist, dass es uns saubere HTML gibt (die unsere Designer lieben würden). Wir haben jedoch den Wunsch, eine eigene domänenspezifische View-Implementierung zu erstellen.

Antwort

2

Schauen Sie sich http://mvccontrib.org/ für ein paar Proben von verschiedenen ViewEngines. Es gibt 4 enthalten (na ja, minus eins, die veraltet ist, aber der Code ist noch verfügbar)

3

Es ist zu einfach, hier ist was ich getan habe:

  1. eine Klasse von VirtualPathProviderViewEngine abgeleitet erstellen (in der Tat, können Sie einfach Kopieren Sie WebFormsViewEngine und bearbeiten Sie es leicht).
  2. Erstellen Sie eine von IView abgeleitete Klasse. Es gibt nur eine Methode - leg deine Magie hier hin.
  3. In Global.asax.cs:

    ViewEngines.Engines.Add (new MyEngine());