Pulse7
7/27/2017 - 8:45 PM

Configuration extension method for serving node_modules

Configuration extension method for serving node_modules

<link href="/node_modules/bootstrap/dist/css/bootstrap.css" rel="stylesheet"/>
<script src="/node_modules/jquery/dist/jquery.min.js"></script>
    <script src="/node_modules/jquery-validation/dist/jquery.validate.min.js"></script>
    <script src="/node_modules/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.FileProviders;
using System.IO;

namespace Microsoft.AspNetCore.Builder
{
    public static class ApplicationBuilderExtensionMethods
    {
        public static IApplicationBuilder UseNodeModules(this IApplicationBuilder app,IHostingEnvironment env)
        {
            var path = Path.Combine(env.ContentRootPath,"node_modules");
            var provider = new PhysicalFileProvider(path);
            var options = new StaticFileOptions();
            options.RequestPath = "/node_modules";
            options.FileProvider = provider;
            app.UseStaticFiles(options);
            return app;
        }
    }
}