MVC Bundle.Include()VirtualPath语法

时间:2014-02-13 09:15:16

标签: 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.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} * 是什么意思?我理解{version}被替换为数字1.10.2,但是什么规则与*?

一起使用

1 个答案:

答案 0 :(得分:0)

第一个包将呈现:

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

和jquery.validate包将呈现:

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

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

@Update

以上是调试模式 在发布min文件将包括在这里:

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

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