我们可以在asp.net绑定中使用什么样的文件
本文关键字:什么样 文件 绑定 asp net 我们 | 更新日期: 2023-09-27 18:23:59
我想知道是否可以像一样在捆绑中添加ascx文件
bundles.Add(new ScriptBundle("~/bundles/First").Include(
"~/Script/js.ascx"));
我想知道,因为假设我必须在产品发布后在捆绑中再添加一个文件,那么我必须为此重新构建。
不,我们不能在捆绑包中包含ascx文件我们只使用js和css文件进行捆绑。。。这里有一个小的解释为什么我们使用捆绑
随着Web应用程序变得越来越复杂,它所依赖的外部脚本的数量也会显著增加。从jQuery和一些应用程序库开始,如Backbone.js(及其依赖项Underscore),然后从Foundation等UI框架中插入插件和一些表单验证脚本,更不用说你的应用程序代码本身了--你可以很容易地发现你的应用程序有几十个外部文件,每个文件都必须在每次页面刷新时加载。
为了解决这个问题,开发人员经常使用名为“bundlers”
的工具,将脚本文件(或样式表)连接到一个文件中,从而减少在Internet上发送多个文件的I/O开销许多人还执行一个称为"缩小"的过程,即删除非必要的空白,并将变量名更改为尽可能短的名称,从而产生一段不可读但高效的代码。
ASPMVC为绑定
提供了两个定制的类:用于JavaScript文件的ScriptBundle
和用于CSS的StyleBundle
。这两个类都提供了内置的缩小功能,从而进一步减少了您的总负载。您需要为每个捆绑包指定一个唯一的路径。
var myBundle = new ScriptBundle("~/bundles/js");
使用此捆绑包,您可以使用其方法简单地添加新文件(或整个目录!):
myBundle.IncludeDirectory("~/js/vendor/");
myBundle.Include("~/js/app.js");
完成每个捆绑包后,将其添加到作为参数传入的集合中
bundles.Add(myBundle);
继续此模式,直到您配置了所需的所有捆绑包。
我不能回答具体的问题(还没有尝试),但要解决"问题":
我想知道,因为假设我必须在产品发布后在捆绑中再添加一个文件,那么我必须为此重新构建。
根据捆绑文档,您可以选择包括文件甚至目录。。和通配符:
因此:
BundleCollection bundles = BundleTable.Bundles;
bundles.Add((new ScriptBundle("~/bundle/custom")
.IncludeDirectory("~/Scripts/edsf/", "ed*")));
平均值:
- 我的目标是文件夹
/Scripts/edsf
- 我希望所述目录中以
"ed"
开头的所有脚本都在脚本包中,例如。- edsf.js
- edfo.js
如果我将一个新文件edbar.js
添加到/Scripts/edsf
目录中,它将自动绑定,并且您将看到版本字符串得到更新。
无需构建。。。。
Hth。。。