【发布时间】:2014-03-06 23:33:34
【问题描述】:
我对 Child Action 进行了非常密集的调用,其中大量的 c# 代码在几个视图中被简单地调用:
@Html.RenderPartial("mychildAction")
现在,每当调用此操作时,我都需要加载一些 javascript 文件。我不能将标签内联(在视图内),因为 Jquery(和其他 JS 库)直到 html 页面结束才会加载。
(主)_layout 应该知道调用了此 ChildAction。但这并不是因为 Child Action 获得了新的 HttpContext。
我想出的唯一解决方案是切换到部分(包括一大块 c# 代码到部分中,并向保留在 HttpContext.Current.Items 中的一些自定义对象添加一些字符串,并使我的 _Layout 行为适当)。但是这样做意味着我在这个 ChildAction 上没有输出缓存,并且我会抛出一些不好的做法,比如部分代码。
处理这种情况的最佳方法是什么?
【问题讨论】:
-
将 jquery 放入
<head>标记中。我已经看到其他人说现代浏览器已经具备处理这个问题的能力,现在,将脚本放在文档末尾不再提高加载速度。
标签: c# javascript asp.net-mvc bundling-and-minification