Giriş için bir Akışı olan bir yöntemim var:Bir akımın kapalı olup olmadığını nasıl anlarsınız?
public void Export(Stream finalOutPutStream)
Test amaçları için bunu bir bellek akışıyla adlandırıyorum, şöyle:
// When
_exporter.Export(new System.IO.MemoryStream());
Ancak, yöntemde, Bu bellek akışına yaz, bir ObjectDisposedException alıyorum.
Bu akış bir ifade deyimiyle çevrilmemiş, açık bir şekilde aramadım. Disket (.).
Ne oldu?
Teşekkürler
- DÜZENLEMEK: Benim hatam, problem üçüncü taraf yazardan (DotNetZip). İstisna, zip.Save (new MemoryStream()) olarak adlandırdığımda olur. Sorularımı kendi forumlarında soracağım. Üzgünüz, yardımlarınız için teşekkürler.
? Örneğin, "finalOutPutStream" inizi bir "StreamWriter" içine sardığınızda, "StreamWriter" in kapanması da alttaki akışı kapatır. –
istisna, yazdığım anda, akım yazıcısı kapanmadan önce olur. Ama teşekkürler, temel akımın da kapalı olacağını bilmiyordum! –
'Export' yönteminin içinde istisna var mı? –