HttpChannel
Die HttpChannel-Klasse überträgt Meldungen zu und von Remoteobjekten mit dem SOAP-Protokoll. Alle Meldungen werden über ein SoapFormatter-Objekt übergeben, in dem die Meldung in XML umgewandelt und serialisiert wird. Die erforderlichen SOAP-Header werden dabei dem Stream hinzugefügt. Das binäre Formatierungsprogramm kann ebenfalls angegeben werden. Dies führt zu einem binären Datenstream. Der Datenstream wird dann mit dem HTTP-Protokoll zum Ziel-URI (Uniform Resource Identifier) übertragen. Der HttpChannel ist kompatibel mit SOAP 1.1 und führt die folgenden Funktionen aus:
bietet Kommunikation zwischen Sender und Empfänger unter Verwendung des HTTP-Protokolls für die Übertragung;
bietet Codierung von Payloads in SOAP, einem XML-Codierungsstandard;
stellt den Empfänger für den Empfang von HTTP-Anforderungen und das Senden von HTTP-Anworten in ASP.NET und auf einem TCP-Socket ein;
erzeugt und verwendet ChannelDataStore für Objektverweise.
**Hinweis **Wenn Sie auf dem Client den HttpChannel mit Microsoft Internet Explorer verwenden möchten, legen Sie in Internet Explorer nicht die automatische Konfiguration von Proxyeinstellungen fest. Stattdessen müssen Sie die Proxyeinstellungen in Internet Explorer explizit festlegen.
Der HttpChannel öffnet jeweils nur eine festgelegte Anzahl von Verbindungen zu einem angegebenen Server. Die Standardeinstellung sind zwei Verbindungen. Mit dem clientConnectionLimit-Attribut in einer Anwendungskonfigurationsdatei können Sie aber auch eine andere Einstellung wählen.
Wenn Sie mehrere Anwendungen erstellen, die .NET Remoting verwenden, kann es leicht vorkommen, dass versehentlich ein HttpChannel verwendet wird, um eine Verbindung zu einer Serveranwendungsdomäne herzustellen, die zur Überwachung einen TcpChannel-Objekt einsetzt. Wenn dies geschieht, wird die folgende Ausnahme ausgelöst: "Die zugrundeliegende Verbindung wurde geschlossen: Beim Empfangen ist ein unbekannter Fehler aufgetreten." Wenn Ihr Client diese Ausnahme empfängt, überprüfen Sie, ob die Channels des Clients und des Servers übereinstimmen.