WebGrease 是 mvc4 中的程序集,但它可以像 Yahoo.Yui.Compressor 一样使用吗?我想在 C# 控制台程序中使用 webgrease.dll 并将一个 JavaScript 字符串压缩到另一个字符串。
class Program
{
static void Main(string[] args)
{
Yahoo.Yui.Compressor.JavaScriptCompressor c = new Yahoo.Yui.Compressor.JavaScriptCompressor();
string s = "function hello (name) { return 'hello '+ name + '!'; }";
s = c.Compress(s);
Console.WriteLine(s);
}
}
这是可能的,而且很容易。您可以在Visual Studio文件夹中找到WG.EXE。WG.EXE 实际上是调用相同缩小库的命令行缩小器。可以从命令行、MSBuild 或您选择的任何脚本使用它来执行缩小。
这是WG团队写的一篇关于如何从命令行使用WG的好文章:https://kenhaines.net/webgrease-as-seen-in-visual-studio-2012/
您也可以查看 https://webgrease.codeplex.com/documentation
有关详细信息
这应该是可能的 - 当您使用 NuGet 包含 webgrease 时,您还会获得"WG"命令行工具,该工具完全可以完成您尝试完成上述任务。Webgrease dll 和 WG 实用程序的代码可在 CodePlex 上找到。其中没有特定的 ASP.Net dll 引用。
如果您有ILSpy或Reflector,请查看"WebGrease.Program.ProcessJsFileSet"的代码,了解如何压缩Javascript。要使用的类WebGrease.Activities.MinifyJSActivity,您也可以在CodePlex上看到该类。