加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 使用MS Bundling清空Bundle

发布时间:2020-12-15 21:58:56 所属栏目:百科 来源:网络整理
导读:我正在使用asp.net mvc4以及MS使用System.Web.Optimization库(1.1.0)和使用dotless的自定义LessTransform提供的内置捆绑和缩小.该站点托管在IIS 7中.我的问题是,网站间歇性地捆绑是空的,导致网站加载所有奇怪. http://site/Content/surveycss? 什么可能导致
我正在使用asp.net mvc4以及MS使用System.Web.Optimization库(1.1.0)和使用dotless的自定义LessTransform提供的内置捆绑和缩小.该站点托管在IIS 7中.我的问题是,网站间歇性地捆绑是空的,导致网站加载所有奇怪.

http://site/Content/surveycss?

什么可能导致这个?

UPDATE

>我读过如果较少的编译器遇到错误,则可能导致空包.我已经测试了较少的错误,没有.
>我发现捆绑包配置为使用Content目录的方式可能存在问题,因此我将其更改为:

bundles.Add(new StyleBundle("~/Content/bootstrap")
        .Include(...));

至:

bundles.Add(new StyleBundle("~/cssbundles/bootstrap")
            .Include(...));

重新部署应用程序后,它似乎解决了这个问题.然而,它再次发生.该设置是一个负载均衡器,具有2个IIS服务器.今天,我登录到服务器1并通过IIS浏览该网站,它正在加载正常.

登录到服务器2并通过IIS浏览站点会产生捆绑问题.

更新2

测试资源可能正在使用的想法.我尝试删除导致该问题的捆绑包中的较少文件.成功删除的文件越少.恢复.less文件后,直接浏览到服务器时问题就消失了.

更新3

这个问题刚刚开始在dev服务器上出现,该服务器没有使用不使用dotless的bundle进行负载平衡

bundles.Add(new StyleBundle("~/cssbundles/bootstrap")
        .Include("~/Content/bootstrap/bootstrap.css"));

这是因为nuget包升级而且文件不再位于引用的位置.我仔细检查了所有其他捆绑包,以确保文件仍然存在于它们被引用的位置,并且它们确实存在,所以这不是问题.

更新4

添加了对无点配置的日志记录并收到此消息:

06-12-2013 16:08:07.814,10.183.130.143,demo.app.com,/cssbundles/bundlecss?v=WN4weCPcGs3GJ_Hgsm2B7qNotYNgbrMS6xwEt8SWK6M1,user@email.com,"
directive block with unrecognised format on line 1:
   []: /beginning of file
  [1]: @v: WN4weCPcGs3GJ_Hgsm2B7qNotYNgbrMS6xwEt8SWK6M1;
       ^
  [2]: @import ""~/Content/variables.less"";",Error,""

思考?

解决方法

发生了这种确切的情况(v = [no value]),因为.less文件上的Build Action值被意外设置为None.发生这种情况是因为文件以不寻常的方式添加到项目中,然后重命名为.less.由于VS.NET最初不知道文件类型,因此它将Build Action的属性设置为none.

确保.less文件的Build Action配置设置为Compile,从而允许实际文件包含在构建中.这也是为什么问题不会在本地发生,因为它将存在,但一旦部署,它将丢失.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读