是否可以将 Razor View Engine (ASP.NET MVC) 与 .LESS(类似于 SASS - http://lesscss.org/ for .NET)一起使用,因为它们都使用“@blah”?
我想要实现的是创建与 Razor 混合的 .LESS css 文件。
更新:
抱歉有点不明确。我想要做的是在 .less (dotlesscss) css 文件中使用 Razor View Engine。这会很好,例如将网站设置(如管理员自定义的主题)传递到 css 文件中。
问题是语法会崩溃。
另一种方法是改用 C# 或其他 View 引擎。
最佳答案
您应该考虑使用 Justin Etheredge 的 SquishIt 库。它不仅包含 dotlesscss 库,还能轻松组合和压缩您的 CSS 和 Javascript!
这是我如何在 Razor 中使用 SquishIt 的示例。
以下代码会将所有引用的 CSS 文件合并、缩小和 LESSify 到一个 CSS 文件中。它会对 Javascript 文件执行相同的操作。
@MvcHtmlString.Create(
SquishIt.Framework.Bundle.Css()
.Add("~/media/css/reset.css")
.Add("~/media/css/style.less")
.Add("~/media/css/handheld.css")
.Render("~/media/css/combined_#.css"))
@MvcHtmlString.Create(
SquishIt.Framework.Bundle.JavaScript()
.Add("~/media/js/geo.js")
.Add("~/media/js/jquery-1.4.4.js")
.Add("~/media/js/jquery.unobtrusive-ajax.js")
.Add("~/media/js/jquery.validate.js")
.Add("~/media/js/jquery.validate.unobtrusive.js")
.Render("~/media/js/combined_#.js"))
输出如下所示:
<link rel="stylesheet" type="text/css" href="/media/css/combined_312454.css" />
<script type="text/javascript" href="/media/js/combined_312454.js"></script>
更新(1 年多后)...
您可能想要查看的另一个元素是 Cassette它几乎完成了 SquishIt 所做的一切(甚至更多)。
关于css - .LESS 与 Razor 一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4081084/