MessageContract
that contains a MessageBodyMember
of type Stream
, as shown below, the Stream
can never be null
.[MessageContract(WrapperNamespace = "Learnsomething.com/Internal/DataContracts/Responses/Certificates")] public class CreateCertificateResponse : BaseResponseMessageContract, IDisposable { [MessageHeader(Namespace = "Learnsomething.com/Internal/DataContracts/Responses/Certificates")] public long FileLength { get; set; } [MessageBodyMember(Order = 1, Namespace = "Learnsomething.com/Internal/DataContracts/Responses/Certificates")] public Stream CertificatePDF { get; set; } public void Dispose() { if (this.CertificatePDF != null) { this.CertificatePDF.Dispose(); this.CertificatePDF = null; } } }
If it is
null
when the response is sent back, then the connection will be closed improperly with a The socket connection was aborted error message.
If you must support a
null
Stream
in the response, you can make use of the System.IO.Stream.Null
value. That object is internal, called NullStream
and inherits from Stream
.Links
No comments:
Post a Comment