Memory stream is not expandable

发现项目有一个地方在做图片缩放剪切的一个操作中。碰到有一些特殊的图片会报

Memory stream is not expandable 的错误  

跟踪的时候发现是 由方法 originalStream.SetLength()引起的。

某些情况下原图片的长度会小于新的图片长度 (size还比原来小的情况下,很特殊的图片。) 

把 

var originalStream = new MemoryStream(ProviderManager.FileStorage.LoadFile(OriginalPath)))

变成
var originalStream = new MemoryStream()
var buffer = ProviderManager.FileStorage.LoadFile(OriginalPath);
originalStream.Write(buffer,0,buffer.Length);

可解决。
原文地址:https://www.cnblogs.com/lovebanyi/p/7065966.html