ASP.NET MVC 4 捆绑 - 调试模式下的单个文件 URL

2024-02-27

Problem:

在 ASP.NET MVC 4.5 中完成的 HTML5 离线应用程序中,我们使用框架的捆绑和缩小样式和脚本内置功能 http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification。页面本身一切正常,但写入缓存清单时(因为我们正在编写它)它始终只发出捆绑的 URL。

因此,我们无法在离线模式下调试 JavaScript,因为各个调试 js 文件不会进入应用程序缓存。

Code:

注册捆绑包

这就是我们的BundleConfig.RegisterBundles look:

    // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725
    public static void RegisterBundles(BundleCollection bundles)
    {
        bundles.Add(new ScriptBundle("~/bundles/Scripts").Include(
                   "~/Scripts/*.js"
                   ));
    }

HTML 标记

我们将其纳入我们的_Layout.cshtml对于页面本身来说是这样的:

@System.Web.Optimization.Scripts.Render("~/bundles/Scripts")

这对于页面来说效果很好,通过在以下情况下发出单独的 js 文件:debug is true,以及一个捆绑文件,当debug is false.

输出输入debug=true

<script src="/Scripts/ScriptOne.js"></script>
<script src="/Scripts/ScriptTwo.js"></script>
<script src="/Scripts/ScriptThree.js"></script>

输出输入debug=false

<script src="/bundles/Scripts?v=B0_RvAM_5ifnREcGnNQ3FO8qQp4vyLOdtCUJ-2mXSuA1"></script>

缓存清单

这就是我们将脚本包含到我们的CacheManifest

@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/bundles/Scripts")

输出输入debug=true and debug=false

/bundles/Scripts?v=B0_RvAM_5ifnREcGnNQ3FO8qQp4vyLOdtCUJ-2mXSuA1

我们想要什么?

我们想知道是否有一种方法可以让 Cache-Manifest 输出如下:

输出输入debug=true

/Scripts/ScriptOne.js
/Scripts/ScriptTwo.js
/Scripts/ScriptThree.js

输出输入debug=false

/bundles/Scripts?v=B0_RvAM_5ifnREcGnNQ3FO8qQp4vyLOdtCUJ-2mXSuA1

MSDN 文档 http://msdn.microsoft.com/en-us/library/system.web.optimization.scripts.renderformat.aspx谈论某件事Scripts.RenderFormat方法,它看起来是做我们想做的事情的一个很好的候选者。但智能感知正在抱怨这一点RenderFormat版本中不存在该方法System.Web.Optimization目前参考。

但是,(再次)感谢谷歌,这个答案在这里 https://stackoverflow.com/a/12923723/218882正在解释这RenderFormat事实上,该方法已包含在下一个版本的 alpha 版本中。还有对该答案发表评论 https://stackoverflow.com/questions/12865939/mvc4-bundling-minification-with-ie-conditional-comments#comment17608457_12923723链接到解释我们如何安装它的页面:

PM> Install-Package Microsoft.AspNet.Web.Optimization -Pre

在此版本中,Cache-Manifest可以改为:

@System.Web.Optimization.Scripts.RenderFormat("{0}","~/bundles/Scripts")

现在,我们让缓存清单发出各个文件,同时debug=true.

显然,MSDN 文档与当前的稳定版本不同步!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET MVC 4 捆绑 - 调试模式下的单个文件 URL 的相关文章

  • MVC 在布局代码之前执行视图代码并破坏我的脚本顺序

    我正在尝试将所有 javascript 包含内容移至页面底部 我正在将 MVC 与 Razor 一起使用 我编写了一个辅助方法来注册脚本 它按注册顺序保留脚本 并排除重复的内容 Html RegisterScript scripts som
  • 在 LINQ 中按 Id 连接多表和分组

    我想按categoryId显示列表产品的名称组 这是我的代码 我想要我的视图显示结果 Desktop PC HP Red PC Dell Yellow PC Asus Red SmartPhone Lumia 720 Blue 我的组模型
  • 在 C 中匹配二进制模式

    我目前正在开发一个 C 程序 需要解析一些定制的数据结构 幸运的是我知道它们是如何构造的 但是我不确定如何在 C 中实现我的解析器 每个结构的长度都是 32 位 并且每个结构都可以通过其二进制签名来识别 举个例子 有两个我感兴趣的特定结构
  • 由 IHttpClientFactory 注入时模拟 HttpClient 处理程序

    我创建了一个自定义库 它会自动为依赖于特定服务的 Polly 策略设置HttpClient 这是使用以下方法完成的IServiceCollection扩展方法和类型化客户端方法 一个简化的例子 public static IHttpClie
  • 将 Word 文档另存为图像

    我正在使用下面的代码将 Word 文档转换为图像文件 但是图片显得太大 内容不适合 有没有办法渲染图片或将图片保存到合适的尺寸 private void btnConvert Click object sender EventArgs e
  • 在 C 中初始化变量

    我知道有时如果你不初始化int 如果打印整数 您将得到一个随机数 但将所有内容初始化为零似乎有点愚蠢 我问这个问题是因为我正在评论我的 C 项目 而且我对缩进非常直接 并且它可以完全编译 90 90 谢谢 Stackoverflow 但我想
  • 在 Visual Studio 2010 中从 Fortran 调用 C++ 函数

    我想从 Fortran 调用 C 函数 为此 我在 Visual Studio 2010 中创建了一个 FORTRAN 项目 之后 我将一个 Cpp 项目添加到该 FORTRAN 项目中 当我要构建程序时出现以下错误 Error 1 unr
  • 为什么调用非 const 成员函数而不是 const 成员函数?

    为了我的目的 我尝试包装一些类似于 Qt 共享数据指针的东西 经过测试 我发现当应该调用 const 函数时 会选择它的非 const 版本 我正在使用 C 0x 选项进行编译 这是一个最小的代码 struct Data int x con
  • 具有交替类型的可变参数模板参数包

    我想知道是否可以使用参数包捕获交替参数模式 例如 template
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • Qt - ubuntu中的串口名称

    我在 Ubuntu 上查找串行端口名称时遇到问题 如您所知 为了在 Windows 上读取串口 我们可以使用以下代码 serial gt setPortName com3 但是当我在 Ubuntu 上编译这段代码时 我无法使用这段代码 se
  • 如何禁用 fread() 中的缓冲?

    我正在使用 fread 和 fwrite 读取和写入套接字 我相信这些函数用于缓冲输入和输出 有什么方法可以在仍然使用这些功能的同时禁用缓冲吗 Edit 我正在构建一个远程桌面应用程序 远程客户端似乎 落后于服务器 我不知道可能是什么原因
  • 为什么 std::strstream 被弃用?

    我最近发现std strstream已被弃用 取而代之的是std stringstream 我已经有一段时间没有使用它了 但它做了我当时需要做的事情 所以很惊讶听到它的弃用 我的问题是为什么做出这个决定 有什么好处std stringstr
  • 如何设置 log4net 每天将我的文件记录到不同的文件夹中?

    我想将每天的所有日志保存在名为 YYYYMMdd 的文件夹中 log4net 应该根据系统日期时间处理创建新文件夹 我如何设置它 我想将一天中的所有日志保存到 n 个 1MB 的文件中 我不想重写旧文件 但想真正拥有一天中的所有日志 我该如
  • 为什么 gcc 抱怨“错误:模板参数 '0' 的类型 'intT' 取决于模板参数”?

    我的编译器是gcc 4 9 0 以下代码无法编译 template
  • 使用 C# 读取 Soap 消息

  • 如果没有抽象成员,基类是否应该标记为抽象?

    如果一个类没有抽象成员 可以将其标记为抽象吗 即使没有实际理由直接实例化它 除了单元测试 是的 将不应该实例化的基类显式标记为抽象是合理且有益的 即使在没有抽象方法的情况下也是如此 它强制执行通用准则来使非叶类抽象 它阻止其他程序员创建该类
  • Oracle Data Provider for .NET 不支持 Oracle 19.0.48.0.0

    我们刚刚升级到 Oracle 19c 19 3 0 所有应用程序都停止工作并出现以下错误消息 Oracle Data Provider for NET 不支持 Oracle 19 0 48 0 0 我将 Oracle ManagedData
  • 如何从 ODBC 连接获取可用表的列表?

    在 Excel 中 我可以转到 数据 gt 导入外部数据 gt 导入数据 然后选择要使用的数据源 然后在提供登录信息后 它会给我一个表格列表 我想知道如何使用 C 以编程方式获取该列表 您正在查询什么类型的数据源 SQL 服务器 使用权 看
  • 当从finally中抛出异常时,Catch块不会被评估

    出现这个问题的原因是之前在 NET 4 0 中运行的代码在 NET 4 5 中因未处理的异常而失败 部分原因是 try finallys 如果您想了解详细信息 请阅读更多内容微软连接 https connect microsoft com

随机推荐

  • Grails:Tomcat 不会在产品中完全关闭

    我在关闭生产环境中的 Grails 应用程序时遇到问题 从 IntelliJ 运行时 它会干净地关闭 但在独立的 Tomcat 7 上 关闭会使其进入僵尸状态 其中 java 进程仍然存在 但 HTTP 请求挂起 我必须杀死java进程 使
  • ClickableSpan TextView 在单击后保持选中状态

    我正在使用以下代码来制作我的TextView显示像一个链接 当用户单击它时 我会显示一个AlertDialog 但在用户离开对话框后 文本仍保持选中状态 而且看起来很丑 TextView terms TextView findViewByI
  • Angular 2:从 MockBackend 静态解析符号值时遇到错误

    我是 Angular2 的新手 正在尝试运行它tutorial http jasonwatmore com post 2016 08 16 angular 2 jwt authentication example tutorial 它使用一
  • 如何实现Java流?

    我想实施一个Stream
  • OpenCL C/C++ 动态绑定库(win32 及更多)

    我正在尝试 OpenCL 为了将其投入生产 我希望能够动态绑定到 OpenCL DLL 在 Windows 下 以便 优雅地 处理没有 OpenCL 的情况安装在主机上 是否有任何可用的库 或代码片段 可以在 C 或 C 中处理这种动态绑定
  • 设置 android:extractNativeLibs=false 以减少应用程序大小

    我不确定我是否做对了 看来它正在做相反的事情 如果我保留旗帜android extractNativeLibs https developer android com reference android R attr html extrac
  • 影响流星服务的页面编码?

    如何为使用meteor服务的页面设置编码 目前我的 Firefox 不断输出此警告 The character encoding of the HTML document was not declared The document will
  • Flask 和 Flask-Login 新手 - ImportError:没有名为登录的模块

    看来 Flask login 的安装有问题 尽管使用以下命令成功安装 pip install flask login 我的 app py 文件 from flaskext login import LoginManager lm Login
  • 如何在 iText 中创建具有多个标题的表格?

    我如何实现以下目标 目前我可以得到单头表 如何在具有 colspan 的列上方添加列标题 要创建具有多个标题的表格 请使用 Table addHeaderCell 如下例所示 String 文件名 test pdf PdfDocument
  • 在 WP7 中将照片上传到 picasa 时出现未经授权的访问异常

    我有以下代码尝试将图片上传到 picasa 网站 当我尝试上传时 出现未经授权的访问异常 我不知道如何获取 AuthToken 这是我的代码 如果您有任何线索 请告诉我 public delegate void UploadPhotoCal
  • 在 Python 中监听连接时接收命令行输入

    我正在尝试编写一个程序 让客户端连接到它 同时服务器仍然能够向所有客户端发送命令 我正在使用 扭曲 解决方案 我该怎么办 这是我到目前为止的代码 我知道 Twisted 已经使用非阻塞套接字 import threading print t
  • JAVA执行Unix系统命令问题

    我在从 JAVA 代码执行系统命令时遇到一个奇怪的问题 其实我想得到Mac OSX来自我的 JAVA 应用程序的系统信息 为此 我正在使用 Runtime getRuntime exec system profiler detailLeve
  • HTML 5 文件输入 iOS 和 Android [Cordova/Phonegap]

    在 PhoneGap 应用程序中 我尝试使用 HTML5 使用相机input像这样的标签 使用 CLI 创建新项目 添加iOS和Android平台 添加相机插件 为两种设备构建 在两台设备上运行 实际设备 iPhone 5 配备 iOS 7
  • DataGridView 重新加载后保存过滤

    我在 C 中使用 DataGridView 时遇到一些问题 case is 我对数据库进行一些更新 然后使用新值重新加载 DataGridView myDataGridView DataSource myDataSet Tables 0 一
  • Android Canvas.drawText

    我有一个视图 我正在 onDraw Canvas canvas 方法中使用 Canvas 对象进行绘制 我的代码是 Paint paint new Paint paint setColor Color WHITE paint setStyl
  • CSS DIV 内联在底部

    我有3个部门要放inline at the bottom 我不知道该怎么做 任何人都可以帮助我吗 The expected output 我尝试过的代码 feature description margin top 20px padding
  • 从 CentOS 7 或 RHEL 7 中完全删除 MariaDB 或 MySQL

    我在 CentOS 7 上安装了 MariaDB 但我在某些配置上遇到了一些问题 现在它完全配置错误 因此 我想用 yum remove mariadb mariadb server 删除MariaDB 然后用 yum install ma
  • 使用 R 分割字符串和计算字符的更快方法?

    我正在寻找一种更快的方法来计算从 FASTA 文件读取的 DNA 字符串的 GC 含量 这归结为获取一个字符串并计算字母 G 或 C 出现的次数 我还想指定要考虑的字符范围 我有一个工作函数相当慢 它导致我的代码出现瓶颈 它看起来像这样 c
  • 如何从收据中提取相关信息

    我正在尝试结合使用 Opencv Tesseract 和 Keras 从一系列不同的收据中提取信息 该项目的最终结果是 我应该能够使用手机拍摄收据照片 并从该照片中获取商店名称 支付类型 卡或现金 支付金额和找零 到目前为止 我已经使用 O
  • ASP.NET MVC 4 捆绑 - 调试模式下的单个文件 URL

    Problem 在 ASP NET MVC 4 5 中完成的 HTML5 离线应用程序中 我们使用框架的捆绑和缩小样式和脚本内置功能 http www asp net mvc tutorials mvc 4 bundling and min