My Environment
* Windows XP
* .NET 2.0
* Visual Studio 2005
I have written a SoapExtension in c# on a windows XP machine. The purpose
of this extension is to monitor progress for data being transfered over the
wire. I have a web service that exposes one method. All this method does is
return a byte array of 5 megs. When I call the service I receive all 5 megs,
but my SoapException is not called until all 5 megs have been transfered over
the wire. I am succesfully getting the extension to launch, but by the time
it calls the ChainStream for the deserialization process, the Stream being
passed in is a MemoryStream and not a NetworkStream. I am loading the
SoapExtension through my app.config file with the lines below.
<system.web>
<webServices>
<soapExtensionTypes>
<add
type="WSProgressTest.SoapProgressExtension, WSProgressTest"
priority="0"
group="High" />
</soapExtensionTypes>
</webServices>
</system.web>
From what I understand, a priority of 0 and a group level of "High" should
make my SoapExtension be the first Extention to be called. I would like to
know if there is a way to read from a NetworkStream so I can monitor the rate
at which I am transfering data over the network.
Any insight is appriciated. Please let me know if there is some additional
info that owuld make this question simpler to understand/answer.
Thanks