在运行时和编译时ASP.NET sass / scss编译?

我正在寻找在运行时和编译时编译我的.scss文件的解决方案。

我需要两者的原因是我们的设计师在Mac上工作,并且更喜欢在运行时动态编译其.scss文件(特别是在开发阶段)。 另一方面,我需要编译时支持来validationSCSS在构建过程中是否成功编译。 如果SCSS没有编译,我的目标是使构建失败。

我在NuGet上找到了几个库,然而,每个库中的小缺陷都阻碍了我。

是否有适用于这两种情况的解决方案?

这是我的研究带给我的地方:

运行时支持

  • BundleTransformer.SassAndScss通过HttpHandler(与Bourbon一起工作 ,尽管很慢)
  • Cassette.Sass (因错误而无法编译Bourbon)

编译时支持:

  • Cassette.MSBuild (似乎没有捆绑SCSS文件,只有CSS)
  • Mindscape Web Workbench (Pro版本显然包含一个命令行工具,但是,该function的文档非常有限)
  • 其他?

Mindscape Web Workbench的Pro版本包含一个用于在运行时进行编译的命令行工具。 目前,只有每晚构建能够编译Bourbon和Neat(我的要求之一)。

这是我的预制活动,目前正在发挥作用:

 "C:\Program Files (x86)\Mindscape\Web Workbench\Command Line\wwcmd.exe" "$(ProjectDir)scss\style.scss" /o:../css /style:compressed 

更新:

我们决定简单地从预构建事件中调用SASS而不是使用Web Workbench。

 call sass -C "$(ProjectDir)assets\scss\main.scss" "$(ProjectDir)assets\css\compiled\main.css" --style compressed 

看看SassAndCoffee 。 这就是Cassette正在使用的东西,它将所有东西嵌入到一些组件中。

另一方面,Web Workbench实际上将ruby和sass gems安装到隐藏在当前用户目录下的非常长的文件夹路径中的文件系统,这对于Web应用程序以及安全性和权限可能是麻烦的。