Change view im MVC
Ich bin neu in MVC.
Muss ich in zwei Ansichten (für gleichen Logik) eine für normale browser und eine für mobile.
Wie kann ich umleiten auf andere Ansicht für Mobile?
nun habe ich zwei controller, aber ich will mit nur einem controller (HomeController.cs) für beide Ansichten.
Ich weiß, dieser Weg, sollte ich meine Handy-Ansichten unter "Home".
Helfen Sie mir bitte zur Weiterleitung auf die Mobile Ansicht mit nur einem controller.
ich bin mit unten umleiten, jetzt (mit zwei Controllern):
return RedirectToAction("Index", "Mobile");
Ich bin mit framework 3.5 und MVC 2
- nur so nebenbei ich begann zu Lesen über windows 8 "metro-style" - apps und es scheint, dass Sie Ziel mehrerer UI-Ziele intrinsisch
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich bin mit ein wenig Mühe Malte Sie Ihr setup. Meine Vermutung ist, Sie haben das aktuelle setup:
Controller
- HomeController.cs
- MobileController.cs
Ansichten
- Home
--Index.aspx
- Mobile
--Index.aspx
Aber Sie wollen:
Controller
- HomeController.cs
Ansichten
- Home
--Index.aspx
- Mobile
--Index.aspx
Ist das richtig?
Update:
Aas Menschen, die unten erwähnt werden, es ist einer von denen 'das ist nur, wie MVC funktioniert" Art von Geschäft. 'Heimat' ist ein Ort, den Sie gehen können, aber "Mobil" ist eine bestimmte Art von Seite. Wenn Sie hinzufügen ein weiterer Bereich namens "Über" als neue Ansichten Unterordner, wo würden Sie Ihr "mobile"? Was ist mobile jetzt handhaben soll? Wenn mobile soll aber nicht zu replizieren, die regelmässig vor Ort, dann sollte es seine eigene Steuerung, auch wenn es repliziert einige code (vergessen Sie nicht, können Sie Klassen erstellen, die außerhalb der Controller, die tun können, die Hauptlast der Arbeit, die jeder controller nennen kann).
Auf der anderen Seite, wenn Sie wollen, eine mobile version von jeder Ihrer Seiten sollten Sie werden, indem Sie Sie im Ordner sichten für jede route. Zum Beispiel:
Controller
- HomeController.cs
Ansichten
- Home
- Mobile
-- Index.aspx
--Index.aspx
Ich bin mir nicht genau sicher, wo Sie die Logik, um herauszufinden, wenn Sie auf einer mobilen Plattform, aber vorausgesetzt, für die es jetzt in der Steuerung, die irgendwo in Ihrem HomeController.cs haben Sie dann:
Hinzufügen Mobile-Ansicht-Engine.
Home Controller
erstellen Sie Zu der Aktion wie
Public ActionResult Index()
{
}
Und Eine Andere Aktion (Mobile)
Public ActionResult-Mobile()
{
}
Single-Controller Haben Viele Action(View)
Controller
- HomeController.cs
Ansichten
- Home
--Index.chtml
- Mobile
--Index.chtml