Ich würde gerne wissen, wie Sie auf eine Javascript-Datei außerhalb www Stammordner in .net Core-Projekt im Visual Studio 2017 erstellt oder erstellen. Ich habe eine Datei in dem Ordner erstellt, wo meine Ansichten sind aber Ich kann nicht auf die Datei zugreifen.JS Datei außerhalb www Stammordner
Antwort
Der Punkt des Stammverzeichnisses besteht darin, Dateien über HTTP verfügbar zu machen.
Wenn die Datei nicht über HTTP verfügbar gemacht wird, hat sie keine URL.
Wenn es keine URL hat, kann der Browser sie nicht anfordern.
Verschieben Sie die Datei in das Stammverzeichnis.
ASP.NET macht Ihre gesamte statische Datei aus dem Ordner wwwroot verfügbar. Es ist ratsam, Ihre Dateien 99% der Zeit dorthin zu stellen. Allerdings, wenn Ihr Projekt wirklich erfordert, dass Sie Ihre Javascript-Datei in den Ordner Ansichten (und ich sehe nicht warum), können Sie eine Middleware erstellen. Ihre Middleware hat nur eine Erweiterung Methode für die IApplicationBuilder Schnittstelle
dafür sein, können Sie eine statische Klasse erstellen, wie so
// your middleware (static class so it can have extension methods)
public static class MyStaticFileServer
{
//static method (IApplicationEnvironment so we can easily get the full path of our Project)
public static IApplicationBuilder UseJsFiles(this IApplicationBuilder app, IApplicationEnvironment env)
{
//
var path = Path.Combine(env.ApplicationBasePath, "/Views/Js")
var provider = new PhysicalFileProvider(path);
var options = new StaticFileOptions();
//so our middleware only responds when the url begins with "/Views/js"
options.RequestPath = "/Views/Js";
// file provider so we can serve files
options.FileProvider = provider
//use static file middleware to our middleware to serve files from whatever folder we specify
app.UseStaticFiles(options)
return app;
}
}
Jetzt sind Sie mit der Middleware getan statische Dateien von einem dienen Ordner Ihrer Wahl. Nun haben wir unsere Middleware aus der Startup-Klasse aufgerufen. Wir tun dies, indem sie in der configure-Klasse in der Startup-Klasse Aufrufen
//ASP.NET Configure Method in the Startup.cs file
public void Configure(IApplicationEnvironment environment)
{
app.UseJsFiles(environment);
}
du nativ in .net Kern tatsächlich tun können.
Ich gehe davon aus Sie die statische Dateien Middleware und läuft bereits, aber nur für den Fall, die folgenden in Ihrem nuget Paket-Manager laufen:
Install-Package Microsoft.AspNetCore.StaticFiles
In Ihrem startup.cs, erhalten Sie eine Konfiguration haben Methode. Es sieht wohl nicht allzu unähnlich wie folgt zusammen:
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.UseStaticFiles();
app.UseMvcWithDefaultRoute();
}
So sind die UseStaticFiles werden die Dinge aus dem wwwroot dienen. Sie können jedoch mehrere Verwendungen derselben Middleware in der Pipeline hinzufügen. So sollten Sie Folgendes beachten:
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.UseStaticFiles();
app.UseStaticFiles(new StaticFileOptions()
{
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @"content", @"js")),
RequestPath = new PathString("/content/js")
});
app.UseMvcWithDefaultRoute();
}
Hier servieren wir Ihnen statische Inhalte aus dem wwwroot wie pro normal, aber wir wollen auch sagen, dass der Speicherort der Datei von/Content/Js als gut bedient werden soll. Sie können beliebig viele hinzufügen und statische Inhalte bereitstellen.
Mehr Infos
- 1. www nicht www Umleitung durch .htaccess-Datei
- 2. PHP-Stammordner
- 3. Datei google-services.json fehlt Modul Stammordner
- 4. Maven Dependency in Ressourcen Stammordner-Datei zu
- 5. relativen Pfad vom Stammordner für eine Datei
- 6. Warum sollten MySQL-Anmeldeinformationen außerhalb des www-Verzeichnisses abgelegt werden?
- 7. HTML-Stammordner?
- 8. Webseite Stammordner - PHP - Wordpress
- 9. Hochladen von Datei in WWW-Verzeichnis von WordPress Theme
- 10. Anwendungsfehler (Datei: ///android_asset/www/index.html)
- 11. www und nicht www Auflösungsprobleme in meiner htaccess Datei
- 12. HighCharts Daten von der Datenbank nach außerhalb Js-Datei erhalten
- 13. Wie Nginx Failover auf Stammordner zu tun?
- 14. Eine JavaScript-Datei außerhalb des Doc-Stammverzeichnisses mit zend framework einfügen
- 15. Mehrere Projekte auf demselben Stammordner
- 16. importieren oder erfordern js-Datei in einer anderen js-Datei
- 17. Sails js Modelle außerhalb Webserver
- 18. Wie erzwingen das www prefix laden js file
- 19. AS3 Speichern In den Stammordner
- 20. TYPO3 kann nicht auf Stammordner zugreifen
- 21. Wie Datei außerhalb des Dokumentenstamms enthalten?
- 22. Www und nicht www Seiten
- 23. Einstellung Stammordner HierarchicalDataTemplate WPF
- 24. Ansichten wechseln Stammordner
- 25. Warum gibt es zwei Cordova www-Ordner?
- 26. Redirect https: // www zu https: // Nicht-www
- 27. Umleiten von www zu https nicht www
- 28. Sublime Text - Ausschließen-Datei im Stammordner (aber nicht anderswo)
- 29. .htaccess für .pdf/DOC-Datei im Stammordner umleiten
- 30. Umleitung von nicht www auf www
Legen Sie es im www-Ordner? – evolutionxbox