Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net MVC4 bundle{version}通配符阻塞在非数字版本控制上_Asp.net_Asp.net Mvc_Asp.net Mvc 4_Asp.net Optimization_Bundling And Minification - Fatal编程技术网

Asp.net MVC4 bundle{version}通配符阻塞在非数字版本控制上

Asp.net MVC4 bundle{version}通配符阻塞在非数字版本控制上,asp.net,asp.net-mvc,asp.net-mvc-4,asp.net-optimization,bundling-and-minification,Asp.net,Asp.net Mvc,Asp.net Mvc 4,Asp.net Optimization,Bundling And Minification,根据{version}通配符是(\d+(?:。.d+{1,3})的正则表达式。这区别于: jquery-1.8.2.js jquery-ui-1.9.0.js 但由于非数字编号(。#.#.#pre),它会阻塞: html5shiv-3.6.2pre.min.js html5shiv-printshiv-3.6.2pre.min.js 所以我在这样做:html5shiv-3*和html5shiv-printshiv-*。当然,这意味着我必须在脚本更改时更新包 我只是把HTML5作为一个简单的例

根据
{version}
通配符是
(\d+(?:。.d+{1,3})
的正则表达式。这区别于:

jquery-1.8.2.js
jquery-ui-1.9.0.js
但由于非数字编号(
。#.#.#pre
),它会阻塞:

html5shiv-3.6.2pre.min.js
html5shiv-printshiv-3.6.2pre.min.js
所以我在这样做:
html5shiv-3*
html5shiv-printshiv-*
。当然,这意味着我必须在脚本更改时更新包

我只是把HTML5作为一个简单的例子。这个问题很普遍,因为包含“pre”、“beta”、“-a”、“-alpha”等是常见的。解决方案是手动重命名文件,但不是通过nuget自动重命名


我做错什么了吗?

我不明白你的问题

如果使用语法
{version}
,仍然可以使用-pre或-min等后缀

例如

 bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-{version}-min.js"));

版本变量中不必包含-min。

我不理解您的问题

如果使用语法
{version}
,仍然可以使用-pre或-min等后缀

例如

 bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-{version}-min.js"));

它不必在version变量中包含-min。

听起来{version}regex应该匹配语义版本来解释-pre/alpha1后缀。我将把它添加到我们的待办事项列表中。

听起来,{version}regex应该匹配语义版本来解释-pre/alpha1后缀。我将把它添加到我们的待办事项列表中。

我认为“pre”是版本号的一部分?下一个版本可能有,也可能没有。想想“1.2.3beta”,下一个版本可能没有“beta”。所以如果你把它放进声明中,你每次都要编辑它。而且,我不知道后缀是允许的!是否有官方允许的后缀/前缀/通配符列表?我还没有看到这方面的全面文档。我想“pre”是版本号的一部分?下一个版本可能有,也可能没有。想想“1.2.3beta”,下一个版本可能没有“beta”。所以如果你把它放进声明中,你每次都要编辑它。而且,我不知道后缀是允许的!是否有官方允许的后缀/前缀/通配符列表?我还没有看到关于这方面的全面文档。这将有很大帮助,并使成吨的nuget包的自动使用成为可能。但不知道如何解释所有不同的模式。也许可以查找尾随的“.”或“.min”或“.css”或“.min.css”或类似的内容。这将有很大帮助,并使自动使用大量nuget包成为可能。但不知道如何解释所有不同的模式。可能要查找尾随的“.”或“.min”或“.css”或“.min.css”或类似内容。