c# - 通过 C# Action 手动将 SASS 编译为 CSS 以实现可自定义的前端布局

标签 c# asp.net-mvc sass

我尝试构建一个可由我的用户自定义的 Web 前端。

我的用户没有任何 webDev 技能,我在内部使用 SCSS 文件 所以我想给他们我的 sass 变量进行定制。

(您之前可能在一些著名的 CSS 框架的 themeRollers 中看到过类似的东西。)

所以我的工作流程是这样的:

  1. 用户获取我的 SASS 变量进行编辑
  2. 他们将这些变量发布到 Controller 操作
  3. 神奇:我的 .SCSS 文件变成了 .CSS 文件
  4. 我保存 .CSS 文件以供以后的网络请求使用

我需要你的帮助,因为我不知道第 3 步应该是什么样子。 也许您已经实现了这个或者您有一个有用的想法。

非常感谢任何建议

最佳答案

所以我找到了一种使用 NSass 来施展魔法的方法. 我必须测试它是否/如何支持@imports,但这似乎是解决该问题的正确方向。

这是一个使用 NSass 的小片段

string scss = "button.button{background-color: #fff; &:hover{opacity: 0.5;}}"
var compiler = new SassCompiler();
string compiled = compiler.Compile(source: scss, outputStyle: OutputStyle.Compressed, sourceComments: false); //returns "button.button {background-color:#ffffff;}button.button:hover {opacity:0.5;}"

关于c# - 通过 C# Action 手动将 SASS 编译为 CSS 以实现可自定义的前端布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25740813/

相关文章:

css - 停止 SASS 将颜色编译为字体颜色

css - 可扩展/模块化 CSS : how to handle vertical margins between modules?

C# 监听 TCP 端口

c# - ASP.NET MVC 多层应用程序 : where to place Automapper initialization?

css - 仅在 CSS 中具有可变高度的网格布局

c# - HTML.RenderAction 来自不同位置?

asp.net-mvc - WebGrid( Razor )中的Mvc 3文本框

c# - 缓存与 session 的优势

Java matchesAt() 在 C# 中等效

c# - 在Machine.config中配置ELMAH-elmah.axd上的404