Mischen WebForms und MVC: Was soll ich mit dem Master tun?
-
01-10-2019 - |
Frage
Ich möchte eine WebForms App zu MVC starten migrieren. Der Prozess wird schrittweise, so müssen beide Systeme koexistieren.
Die Frage ist: Should Ich habe zwei Masterpages, eine für die WebForms-Seiten und andere für die MVC-Ansichten? Gibt es eine Möglichkeit nur einen haben?
Lösung
In ASP.NET MVC die Master-Seite sollte von System.Web.UI.MasterPage
. Wenn in MVC verwenden Sie Letzteres Sie keinen Zugriff auf Helfer haben. Obwohl Sie ViewMasterPage
im klassischen Webforms nutzen konnte, weil es von MasterPage
ableitet (wieder einmal haben Sie keinen Zugriff auf Helfer in der Web Forms-Anwendung, aber wen interessiert das schon).
So Ihre Frage zu beantworten, ja, könnten Sie eine gemeinsame Masterseite vorausgesetzt, es ist von ViewMasterPage
ableitet.
Dieses Wesen gesagt, Sie wahrscheinlich nicht in der Lage sein werden, diese Arbeit als in einer MVC-Master-Seite, damit Sie HTML-Helfer verwenden würden Teilansichten wie Html.RenderPartial
zu machen, die vielen Sinn in einer klassischen WebForms Anwendung und umgekehrt nicht machen in eine klassische WebForms Anwendung würden Sie wahrscheinlich einige serverseitige Steuerelemente wie <asp:xxx runat="server" />
oder haben einen einzigen form
Tag (wieder mit runat="server"
) verunreinigt mit Viewstate verwenden, etc ..., die in MVC macht keinen Sinn kaum. Also meine Empfehlung nicht so zu tun wäre.