YUI压缩VB与C#
我正在从visual basic转换缩小功能:YUI压缩VB与C#,c#,vb.net,yui,C#,Vb.net,Yui,我正在从visual basic转换缩小功能: example = Yahoo.Yui.Compressor.JavaScriptCompressor.Compress(someString, False, True, True, True, -1, UTF8Encoding.UTF8, Globalization.CultureInfo.InvariantCulture) 到c#。但是,c#中的compress方法只接受字符串参数,没有重载方法。下面的c#代码是否等同于上面的原始VB代码 v
example = Yahoo.Yui.Compressor.JavaScriptCompressor.Compress(someString, False, True, True, True, -1, UTF8Encoding.UTF8, Globalization.CultureInfo.InvariantCulture)
到c#。但是,c#中的compress方法只接受字符串参数,没有重载方法。下面的c#代码是否等同于上面的原始VB代码
var compressor = new Yahoo.Yui.Compressor.JavaScriptCompressor();
example = compressor.Compress(someString);
您正在VB.NET中调用静态
Yahoo.Yui.Compressor.JavaScriptCompressor.Compress
方法,并在C#中实例化Yahoo.Yui.Compressor.JavaScriptCompressor
类
您可以在C#中调用Yahoo.Yui.Compressor.JavaScriptCompressor
,以复制相同的行为。据我所知,C#中的等价物需要您自己在JavaScriptCompressor
实例中设置相应的属性,而不是将它们传递给(似乎不存在)静态压缩
方法。例如:
var compressor = new Yahoo.Yui.Compressor.JavaScriptCompressor
{
Encoding = UTF8Encoding.UTF8,
DisableOptimizations = false,
ObfuscateJavascript = true,
PreserveAllSemicolons = true,
IgnoreEval = true,
ThreadCulture = Globalization.CultureInfo.InvariantCulture
};
var example = compressor.Compress(someString);
布尔属性的顺序可能与以前不同,所以我只是猜测。库中有一个带有这些属性的
JavaScriptCompressorConfig
类,但我找不到如何将其传递给压缩器。如果不在C#中新建对象,您确定不能像以前一样使用相同的静态方法Compress
?它应该是同一个程序集。@Rup如果我使用与中相同的静态方法,则会出现对象引用错误VB@Rup:库中似乎根本没有用C#编写的静态Compress
函数。我也不确定VB版本是如何工作的(我假设它不是,或者是旧版本库的一部分)。JavaScriptCompressor
的当前代码:@Cory:是的,有-它在Compressor基类中。@DaveDoknjas:但它不是静态的,只接受一个字符串
参数。除了当前版本的库中不存在该方法之外。。。