2010-08-22 14 views
12

Ich habe meine ASP.NET MVC 2-Anwendung in wenigen Bereichen unterteilt. Einer davon ist ein Standardbereich im Hauptkatalog und der andere ist ein Bereich Account im Bereichskatalog. Nun, das Problem ist, dass ich die gleiche Ansicht in Controllern aus diesen beiden Bereichen verwenden muss.Einen Blick aus einem anderen Bereich zurückgeben

Wenn sie in der gleichen Gegend waren, würde ich nur return View("ViewName"), aber was kann ich tun, um eine Aussicht von meinem Standardbereich in einem Controller von meinem Account Bereich zurückzukehren? Irgendwelche Ideen?

+0

Nur eine Anmerkung, Sie können diese Ansicht in den '~/Views/Shared'-Ordner stecken und rufen Sie' return View ("ViewName") 'von jedem Controller/Bereich. – Omar

Antwort

27

Sie konnten die relative Lage der Ansicht angeben:

return View("~/Views/YourArea/YourController/YourView.aspx"); 

Aber wenn ein Blick auf mehrere Bereiche geteilt würde ich empfehlen, den ~/Views/Shared Ordner zu verwenden, die diesen Zweck besser dient.

+0

Danke Darin - Ich werde dieses versuchen. –

4

Dies ist eine alte Frage, aber immer noch ein relevantes Thema in MVC denke ich, ist so hier, wie ich es in einer trockenen Art und Weise zu lösen, die Sie leicht den Server-Pfad ändern kann, und haben alle Ihre abhängigen Aktionen automatisch aktualisiert:

Dies ist sauber, da es standardmäßig Razor (.cshtml) Dateien anzeigen, aber es kann explizit durch die Bereitstellung des zweiten Parameters, wie in SomeOtherAction() gesehen werden.

Es ist einfach, aber praktisch, besonders während der Entwicklung, wenn sich der Pfad Ihrer Area ändert oder so.

Hoffe, dass jemand hilft.

Verwandte Themen