2012-06-20 58 views
1

简单的问题,无法找到直接的答案。我如何修改T4模板的输出文件名?

我正在使用T4模板捆绑和缩小所有的JavaScript文件。现在我想包含当前的Assembly Hashcodein我的文件名。但我怎样才能访问这个文件名?

解决方法是在生成后重命名输出文件,但这对我来说似乎不太好。MVC T4 Template:更改输出文件名

+0

T4真的是绑定和缩小js的最佳工具吗? – R0MANARMY

+0

那么,这不仅是捆绑和缩小,我只是好奇,并没有找到一个asnwer。 但是无论如何,你会有什么建议:a)捆绑和b)缩小js? – iappwebdev

+0

这里有一个类似的问题:[是否有.NET库用于缩小Javascript?](http://stackoverflow.com/questions/8567070/is-there-a-net-library-for-minifying-javascript)。 [Scott Hanselman](http://www.hanselman.com/blog/TheImportanceAndEaseOfMinifyingYourCSSAndJavaScriptAndOptimizingPNGsForYourBlogOrWebsite.aspx)介绍了一些缩小/打包JS和CSS的工具。当ASP.NET 4.5推出时,它看起来好像会[内置于框架中](http://weblogs.asp.net/scottgu/archive/2011/11/27/new-bundling-and-minification - 支持-ASP净4-5-series.aspx)。 – R0MANARMY

回答

0

您需要做一些名为auto-versioning的操作,这通常是通过URL重写完成的。物理文件并未实际重命名。

请参阅有关JavaScript和CSS自动版本细节这个问题:

How to force browser to reload cached CSS/JS files?

需要注意的是,如果你使用模板来生成每次生成一个文件的时间不同的物理文件,那么你将失去很多源代码管理(修订等)的好处,并且最终会在磁盘上产生难以控制的大量文件。