I’m working with Ionic.Zlib.DeflateStream (I think aka DotNetZip) in C# code and notice it doesn’t have a BaseStream property like System.IO.Compression.DeflateStream does. Is there any simple way to access this? Maybe a partial class or extension (not really familiar with those concepts) or just something I’m overlooking, or an updated version of this library?
Update: I have function deep inside a large project that is given an Ionic.Zlib.DeflateStream as a paramater. I know that the underlying stream is a MemoryStream, and I want to modify the code to seek to Position 0 in the underlying stream, write a few bytes, then return to the previos Position. This is what we call a “kludge”, or dirty-hack, as opposed to rewriting a lot of code… but this is the solution we are looking for at this time, as opposed to something else that would require more retesting. The few bytes in this part of the MemoryStream that need to be updated are not compressed, so modifying them outside the DeflateStream in this matter is fine.
I’d still like to know other options for future projects, or if this answer could cause issues, but I think I did find one option…
When I create the object like this:
If instead I create a class like:
I can change the above code to:
Then make the function where I need access to it something like this:
Ideally I’d only have to modify the Whatever() function, because sometimes I might not have access to the code that created the object in the first place, but in this case I do. So still hoping for an answer, even though I found one possible way to handle this.