我正在使用Dotless和System.Web.Optimizations.LessBundle在我的MVC 5应用程序中包含Less stylesheets。一切都在我的本地机器上的Debug和Release中工作。
我基本上遵循this blog post所做的相同步骤。
我的捆绑代码如下所示:
bundles.Add(new LessBundle("~/Content/css/mySheet").Include(
"~/Content/lib/normalize/normalize.css",
"~/Content/site/my/sheet.less"));
在开发本地我最终得到这样的链接:
http://localhost:57240/Content/site/my/sheet.less
在本地发布时,我最终会得到一个这样的链接:
http://localhost:57240/Content/css/mySheet?v=zGP7kp7SWQZ0s2SVk555UPp3zcThPaRqzm6bTysZJzE1
但是,当我将Release版本部署到Azure网站(使用Visual Studio发布机制)时,我最终会得到一个如下所示的链接:
http://mypage.azurewebsites.net/Content/css/mySheet?v=
如您所见,魔术标识符未附加到URL的末尾。
是什么给出了?
答案 0 :(得分:6)
事实证明我有两个问题。 normalize.css文件未包含在项目中,因此未部署到Azure。 Less文件在Azure环境中返回404,但一旦设置为Build Action =“Content”,它就开始工作了。我不确定为什么这第二件事有效,所以我发布了another question。