4

我们运行了一个 MVC 项目,但在没有实际回收池的情况下刷新 .less 文件似乎有问题。

如果只是我,我不会为此烦恼,因为每次编译时,池都会回收。但是,我们的 Web 集成商不喜欢重新构建,因为在更改 .less 文件时他甚至不在 Visual Studio 中工作。

这就是我所做的:

  • 从 Nuget 获得 SquishIt 到最新版本;
  • 在Layout.cshtml中调用Bundle.Css().Add(...).Render();
  • csproj 设置为在调试模式下编译(配置管理器);
  • 进入 Web.config 文件。

我查看了 codethinked.com 网站上的几乎所有条目,但找不到我要找的东西。有些人似乎有问题,但不是文件没有重新生成。

谢谢!

4

3 回答 3

3

Justin Etheredge 在谷歌群组上得到了回答。它将在 0.8.3 版本中修复。

http://groups.google.com/group/squishit/browse_thread/thread/6643663dda433a68

于 2011-12-08T03:04:06.293 回答
1

在调用 .Add 后尝试使用 ForceRelease

像这样:

.Add("~/Content/lessfiles/site.less")
.ForceRelease()
.Render("~/Content/combined_site_#.css")

进行更改以包含 ForceRelease 后,请再次执行池回收以确保您正在查看新文件。

最后,在后台使用记事本更改您的 .less 文件。
页面的下一次刷新应该选择更改。

于 2011-11-19T13:46:07.370 回答
0

虽然对于生产来说不是一个好的解决方案,但我发现在本地运行 IISReset(如果您通过 IIS 运行)是强制 squishit 识别更改的好方法。

于 2013-10-30T16:32:48.913 回答