2017-10-24 2 views
-1

Eines der neuen Schlüsselfunktionen von ASP.NET Core 2.0 ist Razor Pages. Ich konnte sie in der Standard-/Pages-Ordner und andere benutzerdefinierte Ordner wie /RazorPages verwenden, indem Sie dies in meine startup.cs Datei.Ändern Sie den standardmäßigen Verzeichnisnamen von ASP.NET Core 2 Razor Pages in wwwroot

services.AddMvc().WithRazorPagesRoot("/RazorPages"); 

wie in diesem Artikel beschrieben: http://www.talkingdotnet.com/change-asp-net-core-razor-pages-default-directory-name/

Aber wenn ich versuche, den Standard Razor Seiten Verzeichnis der /wwwroot Ordner zu machen, ignoriert er jede meiner Namensräume oder in dem „Code-Behind“ erklärten Modelle. CS-Datei. Wie folgt aus:

services.AddMvc().WithRazorPagesRoot("/wwwroot"); 

Ich vermute, weil .cs-Dateien können nicht aus dem öffentlichen Blick auf /wwwroot Ordner zugegriffen werden.

Kann jemand das Razor Pages Standardverzeichnis /wwwroot erstellen?

Ich denke, die Razor Pages-Funktion wird in Zukunft in großem Umfang verwendet werden.

Vielen Dank für Ihre Hilfe.

Antwort

3

Sie müssen Ihre Projektdatei bearbeiten, um .cs Dateien in wwwroot zu kompilieren; Die Standardvorlage schließt sie aus.

Sie sollten dies jedoch nicht tun; wwwroot ist nur für öffentlich zugängliche Inhalte gedacht, nicht für serverseitigen Code.

+0

Vielen Dank @SLaks. Um Ihrer Antwort mehr Details hinzuzufügen, habe ich die .csproj-Datei geändert und eine ItemGroup hinzugefügt: . Das funktionierte und jetzt kann ich Razor Pages und ihre Code-Behind-Dateien im Ordner/wwwroot haben. – glowworms

+0

Ich stimme SLaks zu, dass du das wirklich nicht tun solltest. Sie riskieren, Ihren Quellcode öffentlich zugänglich zu machen. Es gibt einen Grund, warum es in einer separaten Ordnerstruktur erstellt wurde. –

Verwandte Themen