У меня была странная проблема с GZip, и я надеюсь, что вы мне поможете.
using (MemoryStream memoryStream = new MemoryStream(10240))
{
//isCompressed will be true if the browser accepts gzip
using (Stream writer = isCompressed ?
(Stream)(new GZipStream(memoryStream, CompressionMode.Compress)) :
memoryStream)
{
StringBuilder sb = new StringBuilder();
//filenames is collection of multi js files need to be minify
foreach (string fileName in fileNames)
{
sb.Append(File.ReadAllText(context.Server.MapPath(fileName)));
}
//minifier is an instance of Microsoft.Ajax.Utilities.Minifier
string minifiedString = minifier.MinifyJavaScript(sb.ToString());
byte[] bts = Encoding.UTF8.GetBytes(minifiedString);
writer.Write(bts, 0, bts.Length);
}
}
Длина bts на самом деле превышает 6000, однако, когда writer.Write(bts, 0, bts.length)
было выполнено, писатель может написать только 2334 символа, я проверил внутреннюю информацию, она говорит, что операция не поддерживается, я был так смущен, и я не знаю почему?