Asp.net mvc MVC Bundle.Include()虚拟路径语法

Asp.net mvc MVC Bundle.Include()虚拟路径语法,asp.net-mvc,Asp.net Mvc,默认情况下,asp.net mvc解决方案中有以下代码行 bundles.Add(new ScriptBundle("~/bundles/jquery").Include( "~/Scripts/jquery-{version}.js")); bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include( "~/Scripts/jquery

默认情况下,asp.net mvc解决方案中有以下代码行

 bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-{version}.js"));
 bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                        "~/Scripts/jquery.validate*"));
如果我有这些文件

jquery.validate.js
jquery.validate.min.js
jquery.validate.unobtrusive.js
jquery.validate.unobtrusive.min.js
jquery.validate-vsdoc.js
jquery-1.10.2.js
jquery-1.10.2.intellisense.js
jquery-1.10.2.min.js
jquery-1.10.2.min.map

其中哪一个将包含在呈现页面中?这些符号是什么意思?我知道{version}被数字1.10.2替换,但与*一起使用的规则是什么?

第一个bundle将呈现:

<script src="/Scripts/jquery-1.10.2.js"></script>
 <script src="/Scripts/jquery.validate.js"></script>
 <script src="/Scripts/jquery.validate.unobtrusive.js"></script>

和jquery.validate bundle将呈现:

<script src="/Scripts/jquery-1.10.2.js"></script>
 <script src="/Scripts/jquery.validate.js"></script>
 <script src="/Scripts/jquery.validate.unobtrusive.js"></script>

如您所见*表示将包含所有文件

@更新

以上是调试模式 在版本min中,将包括以下文件:

<script src="/Scripts/jquery.validate.min.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.min.js"></script>


vsdoc文件是visual studio的intellisense。因此,在网页中包含此文件没有任何意义

这两个都在中进行了解释。Jquery{version}将只包含Jquery-1.10.2。js@szpic是的,但是根据*符号,jquery.validate.js和jquery.validate.min.js会发生什么?为什么忽略.min?在c#code中考虑过吗?那么jquery.validate-vsdoc.js呢?是的,我知道包含这个文件没有意义,但是MVC怎么知道包含这个文件没有意义呢?因为如果我创建jquery.validate-TEMP.js,它将包含在页面中,没有详细解释。在asp.net站点上,您只能在重新命名中找到编译器忽略的信息-vsdoc.js文件/intellisense文件。Ofc您可以创建自己的过滤机制并忽略temp;)