问题标签 [web-optimization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3881 浏览

c# - ASP.Net MVC/Web API 自定义动态包在生产中工作但不是在开发中

在我的开发环境中,当我尝试加载动态生成的包时收到 404 响应。奇怪的是,这并没有发生在我们的生产环境中,所以它并不是真正的灾难性,但它使开发有点令人沮丧。

应该发生的是:

  1. 在应用程序预启动(WebActivator PreStart)时,设置依赖解析器、Web API 和 MVC 配置内容。
  2. 在应用程序启动后(WebActivator PostStart),通过依赖解析器加载服务(比方说IMyService)。
  3. 实例化自定义IBundleTransformJsonBundleTransform- 请参阅下面的代码)。
  4. 打电话IEnumerable<string> IMyService.ListSupportedGroups()
  5. 遍历支持的组并构建自定义包(CustomBundle- 见下文...)。
  6. 将自定义捆绑包添加到BundleTable.Bundles.
  7. 将静态 JS/CSS 文件添加到BundleTable.Bundles.
  8. 在页面中引用各种捆绑包并在浏览器中查看内容。

对于具有 404 错误的自定义捆绑包,它在第 8 步失败。调试时,从不调用自定义捆绑转换器。然而,正如我上面提到的,在生产中一切正常——尽管我已经比较了配置文件并且看不到我的开发配置中缺少任何应该有任何影响的东西。此外,在生产环境中,无论 web.config 中的 compiler->debug 值如何,捆绑的内容都会正确呈现。

其他注意事项:

  • 我在生产中使用 IIS 7.5,在开发中使用 IIS 8。
  • 当我在 dev 中设置 debug="false" 时,我在所有捆绑包上都得到了 404。
  • 这是有效的,但在某个时候停止了,我无法确定发生的时间或原因。

我正在使用的代码如下(删除了冗余代码,更改了名称以保护无辜者等...):

转变

自定义捆绑包

配置

渲染脚本

知道我在这里缺少什么来使它正常工作吗?

提前感谢您提供的任何帮助或建议。

编辑

鉴于它正在生产中工作,我强烈倾向于认为问题是环境问题而不是代码问题 - 但是,就我的一生而言,我还无法弄清楚它是什么。我认为最有可能的候选人与配置或引用有关(老实说,IIS 版本似乎不太可能)。

0 投票
1 回答
10443 浏览

asp.net - nuget 包上的“找到的程序集的清单定义与程序集引用不匹配”

所以我一直在 System.Web.Optimization 包上遇到这个错误

无法加载文件或程序集“System.Web.Optimization”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)

0 投票
3 回答
7472 浏览

asp.net-mvc - 没有调用 CssRewriteUrlTransform

我刚刚在 VS 2013 RTM 上创建了一个新的 MVC 5 应用程序。由于某种原因,我的 CSS 文件中的背景图片 url 没有被转换。

因此,为了调试问题,我创建了自定义 CssRewriteUrlTransform 包装器。我发现我的断点没有被调用。

这就是我的 BundleConfig.cs

0 投票
4 回答
27700 浏览

c# - 带或不带虚拟目录的 CssRewriteUrlTransform

我们在我们的站点中使用 MVC 捆绑,CssRewriteUrlTransform确保图像 url 从动态捆绑 css 文件中工作。

但这仅在不使用虚拟目录时有效,即

http://localhost/VirttualDir不起作用,但http://localhost/确实如此。这是因为CssRewriteUrlTransform转换在重写 url 时没有考虑虚拟文件夹。因此,如果图像真实路径是localhost/vdir/content/img/foo.png它会将其重写localhost/content/img/foo.png为错误的

0 投票
0 回答
1658 浏览

c# - 如何覆盖 Styles.Render 或 Scripts.Render 以提供来自无 cookie 域的脚本资源和样式资源

在阅读了这个Cookieless domain for bundling and static resources之后,我想使用这些包来提供来自 cookieless 域的脚本和样式。

如何覆盖 Styles.Render 或 Scripts.Render ?

任何建议可能有用,希望您的回复!

0 投票
1 回答
2564 浏览

php - 优先考虑内容并在另一个之前加载特定元素

我今天尝试使用 Google Speed https://developers.google.com/speed/docs/insights/优化我的页面

它说,这里

如果您的网站使用带有导航侧边栏和文章的两栏设计,但您的 HTML 在文章之前加载侧边栏,请考虑先加载文章。

直到今天,我认为加载特定的 div 元素是不可能的。该文档也没有显示任何教程,所以我很困惑这是如何完成的。如果使用 Javascript/CSS 完成

任何帮助将非常感激。

0 投票
0 回答
176 浏览

asp.net - ASP.NET Web 优化框架捆绑启动时间

我一直在使用 Web 优化框架中的一些捆绑和缩小功能,并且非常喜欢它到目前为止的所有内容,除了似乎相当激进的缓存清除和不小的首次运行成本。

第一次运行可能会捆绑和缩小资源,在冷启动时运行大约需要 3-5 秒。还不错,但它似乎相当积极地将资源从我的实时服务器上的缓存中删除。我有相当低的流量站点,通常会遭受这些冷启动时间的影响,所以想知道是否有任何方法可以通过编程方式修改捆绑框架以不那么激进地清除缓存或在发布过程中生成缩小文件?也许我使用了错误的框架来实现这一点?

任何帮助或指示将不胜感激!

0 投票
0 回答
273 浏览

asp.net - 为什么 CdnFallbackExpression 会生成无版本捆绑包?

通常,由 System.Web.Optimization 生成的所有包都在其查询参数中给出版本。但是,如果您指定一个CdnPathCdnFallbackExpression值,src则回退<script>中的属性将没有版本。我不理解这是有原因的,还是代码中的错误?

0 投票
1 回答
184 浏览

css - 浏览器的 Web 优化条件

我正在使用 Microsoft 的 Web 优化基础架构进行捆绑和缩小。

如何设置根据浏览器提供不同的内容?在没有捆绑的情况下,我想要类似于条件 CSS 文件的行为:

这是我目前的捆绑代码。

有条件捆绑可以吗?或者我应该在我的 HTML 中对包含我的 CSS 条件部分的文件使用传统的非捆绑内联引用?

0 投票
2 回答
8551 浏览

.net - 了解 ASP.NET MVC 脚本捆绑路径规范

因此,我正在努力学习如何在 MVC 中使用脚本捆绑实用程序,但我遇到了一个问题——我不太了解如何为每个 ScriptBundle 对象构建虚拟路径。例如,当使用允许指定 CDN 的构造函数时,我有以下设置

在 Global.asax 中,我有以下电话

然后在 BundleConfig 类中,我有

但是,当我构建并运行我的页面时,我在第一次添加时收到以下错误消息。

是否有我可能在这里遗漏的配置要求?我的路径格式错误吗?

在此先感谢您的帮助。