如何在面向 .net 6.0 的 ASP .NET Core 项目中进行捆绑和缩小,将文件从 cdn 链接加载到捆绑包中?

问题描述 投票:0回答:0

在 ASP.Net MVC 中,以下是从 cdn 链接加载文件并将其打包成一个包的方法:

public static void RegisterBundles(BundleCollection bundles)
{
     bundles.UseCdn = true;
     var version = System.Reflection.Assembly.GetAssembly(typeof(Controllers.HomeController)).GetName().Version.ToString();

    var cdnUrl = ConfigurationManager.AppSettings["cdnUrl"].ToString()+"/{0}?v=" + version;

    bundles.Add(new ScriptBundle("~/bundles/jquery", string.Format(cdnUrl, "bundles/jquery")).Include(
                "~/Scripts/jquery-{version}.js"));
    bundles.Add(new ScriptBundle("~/bundles/jqueryval", string.Format(cdnUrl, "bundles/jqueryval")).Include(
                "~/Scripts/jquery.validate*"));
    bundles.Add(new ScriptBundle("~/bundles/modernizr", string.Format(cdnUrl, "bundles/modernizr")).Include(
                  "~/Scripts/modernizr-*"));
    bundles.Add(new ScriptBundle("~/bundles/bootstrap", string.Format(cdnUrl, "bundles/bootstrap")).Include(
                "~/Scripts/bootstrap.js"));
 }

如何在面向 .net 6.0 的 ASP.Net Core MVC 项目中使用 LigerShark.WebOptimizer 实现相同的功能?

我已经在我的 appsetting.json 文件中添加了下面提到的配置,并按照文档中提到的那样注册了标签助手,其中指出它将在 cdn url 前面添加但它不起作用:

"webOptimizer": {
"enableCaching": true,
"enableMemoryCache": true,
"enableDiskCache": true,
"cacheDirectory": "/var/temp/weboptimizercache",
"enableTagHelperBundling": true,
"cdnUrl": "https://mycdnurl.azureedge.net",
 "allowEmptyBundle": false
}

这是我在 Program.cs 文件中使用的实际代码:

builder.Services.AddWebOptimizer(pipeline =>
{
    pipeline.AddJavaScriptBundle("/bundles/jquery.js", "Scripts/jquery-3.3.1.js");
    pipeline.AddJavaScriptBundle("/bundles/jqueryval.js", "Scripts/jquery.validate*");
    pipeline.AddJavaScriptBundle("/bundles/jqueryajax.js", "Scripts/jquery.unobtrusiveajax.min.js");
    pipeline.AddJavaScriptBundle("/bundles/modernizr.js", "Scripts/modernizr-*");
    pipeline.AddJavaScriptBundle("/bundles/bootstrap.js", "Scripts/bootstrap.js");
if (!isDevelopment)
{
     pipeline.MinifyCssFiles();
     pipeline.MinifyJsFiles();
}
});

我还有多个要捆绑和缩小的 css 文件,但为了更清楚起见,我没有将其添加到我的代码中。

asp.net-core-mvc .net-6.0 cdn bundling-and-minification weboptimizer
© www.soinside.com 2019 - 2024. All rights reserved.