MVC und Umbraco Integration
-
06-07-2019 - |
Frage
Ich habe die Schritte von http: // memoryleak.me.uk/2009/04/umbraco-and-aspnet-mvc.html und integrierte MVC in Umbraco mit Erfolg, aber ich habe immer noch ein Problem, das für mich wichtig ist.
Gibt es eine Möglichkeit, die Umbraco definierten Vorlagen in einer MVC-Ansicht zu erben?
Wie ich verstehe das Problem ist, dass die Umbraco-Vorlagen nur zur Laufzeit HTML werden und die Doctype Eigenschaften, wie @nodeName
werden, weil dieser nicht erkannt und Ausnahme „Null-Referenz-Objekt“ geworfen zu werden.
Danke!
Lösung
Diese Frage ist wirklich alt und nicht relevant für die aktuellen Versionen von Umbraco.
Für den Fall, jemand immer noch nicht bewusst ist - Alle Versionen von Umbraco seit 2013 (6, 7 und jetzt 8) unterstützen MVC
Andere Tipps
Sie einen Blick auf der Blog-Post hat Nachdem scheint es, dass dies tatsächlich nicht mit Umbraco integriert, sondern arbeitet neben Umbraco.
, dass es effektiv sein eigenes Httphandler ist. Das bedeutet, es wird den Umbraco Httphandler zu umgehen und eine ganze Reihe von Umbraco Funktionalität Vorlagen beziehen und das CMS selbst.
MVC Erste Umbraco-Vorlagen zu verwenden ist (wahrscheinlich) nicht möglich, ohne dass Änderungen an der Kernapplikation (in Version 4+). Allerdings bedeutet das nicht, Sie nicht MVC neben Umbraco mit Umbraco wirkt als Content-Repository für eine MVC-Anwendung verwenden können.
Sie könnten leicht MVC-Controller erstellen, die Daten von Umbraco gezogen und gemacht, dass auf Ihre Ansichten zur Verfügung. Zum Beispiel könnten Sie Umbraco Linq2Umbraco für diese.
Wenn Sie weitere Informationen zu den genauen Fehler geben Sie bekommen und genau das, was Sie versuchen zu erreichen, kann es die Lösung sein, ist, wie Sie Ihre Anwendung strukturieren, anstatt zu versuchen, um Brute-Force-Umbraco 4+ etwas zu tun, wird in Umbraco 5 nativ sein (die für die Freigabe einiger Zeit in diesem Jahr geplant ist). Der Quellcode für 5 ist auf Codeplex und kann ein guter Ort, um einen Blick zu haben und sehen, wie der Umbraco Kern Team nähern sich dies.
Es gibt eine alte Diskussion über diese hier: http: // forum .umbraco.org / yaf_postst5106_Using-ASPNET-MVC-with-Umbraco.aspx
und vor kurzem hier: http://our.umbraco.org/forum/getting-started/installing-umbraco/2668-Use-Umbraco-with-aspnet-MVC
Eine weitere Diskussion finden Sie hier: http://our.umbraco.org/forum/developers/extending-umbraco/17523-Umbraco-461-and-MVC-3
und noch mehr hier: http: // unsere .umbraco.org / forum / Entwickler / Ausfahrseiten-umbraco / 6837-Umbraco-Webseite-And-MVC-Webseite-in-One
Anstatt zu versuchen, die Umbraco Kontrollen zu verwenden, könnte man einige umbraco .NodeFactory.Node Klasse zu erhalten, um den Inhalt Sie versuchen, in Ihren Ansichten angezeigt werden soll. Schreiben Methoden, die Mimik (oder zu vereinfachen, basierend auf Ihren Bedürfnissen) umbraco.presentation.templateControls.Item
und umbraco.presentation.templateControls.Macro
kann für Sie ausreichend sein.
Bearbeiten
ging ich mit einigem Erfolg auf diesem Weg. Ich habe auch einen Blick auf die MVC Quelle um herauszufinden, wie
Teilansichten wurden auf das zugrunde liegende Web-Formular steuert Sammlung hinzugefügt. Ich landete eine Klasse zu schreiben, die von der umbraco.presentation.templateControls.Macro
Klasse erbt, die viel wie die System.Web.Mvc.ViewUserControl
Klasse sieht.