2016-07-20 16 views
0

Also ich habe ein C# (asp.net) basiertes Dashboard für ein proprietäres Content Management System. Eines der Dinge, die das Dashboard zulässt, besteht darin, dass der Benutzer eigene CSS-Dateien zu seiner Site hinzufügen und hinzufügen kann. Wenn sie dies tun, ruft mein Controller ein Programm auf, das den Hass mit NSass.Core kompiliert.C# Sass Compiler

Bis jetzt habe ich Foundation 5 als mein Responsive Framework verwendet. Gestern, als ich versuchte, meinen Controller zu aktualisieren, um die Kompilierung von Foundation 6 zu ermöglichen, fing es an, Fehler zu werfen. Die Fehler traten jedes Mal auf, wenn der Compiler versuchte, eine Sass-Map (assoziatives Array) zu parsen.

Ich fing an, das Problem zu erforschen und fand heraus, dass Sass Maps eine relativ neue Mechanik sind und das letzte Mal, als Nsass aktualisiert wurde, vor drei Jahren war, also gehe ich davon aus, dass dies das Problem ist.

Hat jemand ähnliche Erfahrung? Wenn ja, was war Ihre Lösung? Wenn nicht, benutzt jemand noch etwas, das für mich arbeiten würde? Ich habe versucht, ein paar andere Pakete zu installieren, aber fing an, verschiedene andere Fehler zu empfangen, wie libsassnet die 32-Bit-DLL nicht finden kann. Hoffentlich kann mir hier jemand eine Antwort geben, die mir Zeit spart.

Die Fehler, die ich bei der Verwendung von Nsass erhalten habe, entsprachen den "Fehlern beim Lesen von Werten nach dem primären", wobei primary der erste Wert in der ersten Map ist, auf die der Compiler stößt. Wenn ich diese Karte herausnehme, bewegt sie sich einfach zur nächsten und gibt denselben Fehler.

Was meine Frage nach unten verengenden ... Ich will nur wissen, was andere Leute es verwenden aus Sass in C# zu kompilieren

+0

Können Sie bitte Ihre Frage etwas eingrenzen und einige Beispiele von Fehlern zur Verfügung stellen, die Sie haben? – Alex

+0

https://github.com/medialize/sass.js/ sieht aus, als könnte es eine andere Möglichkeit bieten, dieses Problem anzugehen. – spender

Antwort

1

Es gibt ein nuget Paket: Bundle Transformer: Sass and SCSS ein Anbieter für Bundle Transformer ist. Dies ist wiederum eine Erweiterung von System.Web.Optimization, mit der Sie Code zu Ihrem CMS hinzufügen können, um benutzergenerierte SCSS in Css-Dateien zu kompilieren.

Ein Beispiel dafür finden Sie im Paket Optimus für das Umbraco CMS. Wenn Sie diesen Code durchsehen, erhalten Sie eine gute Grundlage für die Erstellung Ihres eigenen Systems. Wenn Sie mit dem Autor des Pakets sprechen (ein wirklich netter Typ), kann er Ihnen vielleicht helfen, Ihr eigenes zielgerichtetes Paket zu erstellen, das nicht von Umbraco abhängig ist.

Hoffe, dass hilft.