Assembly: System.ServiceModel (in system.servicemodel.dll)
An example of a stream upgrade is to build a compression stream directly on top of the transport stream. To add a security upgrade, you additionally implement a class that derives from StreamSecurityUpgradeProvider. You can implement multiple upgrades, each wrapping the preceding one.
The upgrade process has the following steps:
Implement a class that derives from StreamUpgradeProvider.
Register it. You do this by creating a binding element for it, and registering the provider in a custom binding.
The derived class that you implement creates an instance of StreamUpgradeInitiator, which at run time initiates a request to the other end of its connection to upgrade the channel transport layer.
The derived class that you implement creates an instance of StreamUpgradeAcceptor, which at run time receives the upgrade request from the preceding step and, if possible, accepts the upgrade and returns the upgraded stream to the other side of its connection.
If there are additional upgrade requests, they are processed sequentially, as described in the preceding two steps.
Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter EditionThe Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.