Je suis l'aide de mnp à gérer le jQuery, Bootstrap, la Police Génial et le client similaires bibliothèques dont j'ai besoin pour mon ASP.NET application de Base.
L'approche qui a fonctionné pour moi a commencé par l'ajout d'un package.fichier json pour le projet, qui ressemble à ceci:
{
"version": "1.0.0",
"name": "myapp",
"private": true,
"devDependencies": {
},
"dependencies": {
"bootstrap": "^3.3.6",
"font-awesome": "^4.6.1",
"jquery": "^2.2.3"
}
}
npm restaure ces paquets dans le dossier node_modules qui est sur le même niveau que wwwroot dans le répertoire du projet:
Comme ASP.NET de Base sert à la statique des fichiers à partir du dossier wwwroot et node_modules n'est pas là, j'ai dû faire quelques modifications à effectuer ce travail, le premier: l'ajout d'application.UseFileServer juste avant l'application.UseStaticFiles dans mon Démarrage.cs fichier:
app.UseFileServer(new FileServerOptions()
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), @"node_modules")),
RequestPath = new PathString("/node_modules"),
EnableDirectoryBrowsing = true
});
app.UseStaticFiles();
et la deuxième, y compris node_modules dans mon publishOptions dans le projet.fichier json:
"publishOptions": {
"include": [
"web.config",
"wwwroot",
"Views",
"node_modules"
]
},
Cela fonctionne dans mon environnement de développement et il fonctionne aussi quand je le déployer à mon Azure App instance de Service, jquery, bootstrap et font-awesome statique, les fichiers ont bien servi, mais je ne suis pas sûr au sujet de cette mise en œuvre.
Quelle est la bonne approche pour ce faire?
Cette solution est venue après la collecte de beaucoup de morceaux de l'info à partir de plusieurs sources et essayer quelques-uns qui n'ont pas de travail, et il semble un peu étrange d'avoir à servir ces fichiers à partir de l'extérieur wwwroot.
Tous les conseils seront grandement appréciés.