0

几个月来,我一直在学习网站内容优化的各种方法,但是我仍然对这样做的正确方法感到困惑,例如哪个“优化工作流程”会产生什么效果。

ASP.NET MVC通过“ Microsoft.Web.Infrastructure ”包提供了自己的优化框架。有了它,我可以根据请求或应用程序启动时直接在代码中定义捆绑和缩小策略。但是,由于我的样式文件是用less编写的,所以我需要预先编译它们,这可能会减慢整个应用程序的启动过程,所以我觉得在应用程序的构建过程中编译它们可能会更好。但是话又说回来,大多数样式表编译器都允许直接捆绑和最小化,那么为什么不在那里做任何事情呢?

  1. 应用程序编译时应编译LESS文件
  2. 应捆绑CSS文件以减少所需的客户端请求数量
  3. 应最小化CSS文件以减少流量和整体页面内容大小

那么,建议的方法是什么?

  1. 在构建时编译LESS文件(例如 dotless)
  2. 将应用程序部署到服务器
  3. 使用优化捆绑包根据要求捆绑和缩小?

这种捆绑和缩小在 ASP.NET 生命周期中何时发生?在第一次启动 Web 应用程序时?对每一个要求?

4

2 回答 2

0

捆绑和缩小发生在 Web 应用程序的开始。这就是我们指定流程的地方。

一些工具允许您明确地执行此操作,在这种情况下,我们直接加载 .min.js 文件。当我们使用任何工具创建 min.js 时,源文件和缩小文件是不同的。这些是通过映射文件映射的。

当我们在开发过程中更新源文件时,当源 .js 文件更改时,min.js 文件可能不会更新。当文件受源代码控制时,此问题更加突出。在部署期间的这种情况下,通常会发现源计算机中的更改未反映在部署中。

捆绑和缩小最好的办法是采用 ASP .NET 提供的优化框架,与其他外部工具不同,它可以动态地完成这项工作。

当编译 debug = true 时跳过该过程并加载原始文件而不捆绑,当它为 false 时,框架捆绑所有指定的 JS 和 CSS 文件并将其部署到服务器。

我希望这回答了你的问题。

于 2014-05-30T08:13:07.973 回答
0

捆绑和缩小发生在应用程序启动时。

默认情况下,捆绑包是在第一个请求时创建的,然后缓存在服务器上。然后将缓存的版本用于所有其他请求。

于 2014-05-12T14:55:57.240 回答