ASP.NET MVC-3 partial view nicht gefunden
Ich habe Folgendes problem. In meiner Lösung habe ich 2 Controller: Haus und Konto. Alles funktioniert so weit. Aber wenn ich hinzufügen [Autorisieren] oben HomeController zB
[Authorize]
public class HomeController : Controller
{
...
Bekomme ich
System.InvalidOperationException: The partial view 'Repository' was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Account/Repository.aspx
~/Views/Account/Repository.ascx
~/Views/Shared/Repository.aspx
~/Views/Shared/Repository.ascx
~/Views/Account/Repository.cshtml
~/Views/Account/Repository.vbhtml
~/Views/Shared/Repository.cshtml
~/Views/Shared/Repository.vbhtml
Teilansicht Repository ist im inneren HomeController also Blick in ~/Views/Home/Archiv.cshtml, aber es ist seacrhed in Gemeinsamen oder-Konto-Ordner. Wie gesagt, wenn es keine [Autorisieren] oben HomeController Klasse, funktioniert alles wie erwartet.
Den code wo der Fehler Auftritt, ist in der _Layout.cshtml
@Html.Partial("Repository")
Danke für die Hilfe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
_Layout.cshtml ist die master-Seite für die gesamte Anwendung. Was passiert, ist Ihr Zuhause-controller ist auf der Suche für einen authentifizierten Benutzer zu finden, dass der Benutzer nicht authentifiziert ist und die Umleitung auf die login-action in der Konto-controller. Die Aktion wird dann die Wiedergabe Ihrer anzeigen, die verwendet die _Layout.cshtml-master-Seite, die machen will, der Teilansicht, aber kann es nicht finden, weil es nicht mehr in den Account Ordner.
Kurze Antwort: Teilweise Blick auf die in Ihrem master-Seite sollte sich in der ~/Views/Shared " - Verzeichnis. Oder verschieben, dass der partielle Aufruf einer Seite, die nur ausführen, ruft in der Heimat-controller-contexts.
Auch, Überprüfen Sie Folgendes: Stellen Sie sicher, dass die Art der Ausgabe festgelegt ist, um die Inhalte für die Seite in Frage. Dies wurde darauf hingewiesen, mich durch ein peer, Joe F. aus welchem Grund auch immer manchmal ist die Ausgabe nicht korrekt eingestellt. Also, wenn Sie eine Förderung für Ihre app die cshtml-Datei nicht mit kopiert wird.