Freigeben über


Konfiguration von Remoteanwendungen

Damit Remoting reibungslos funktioniert, benötigt die .NET Remoting-Infrastruktur bestimmte Informationen. Sie haben zwei Möglichkeiten, remotefähige Typen zu konfigurieren: Entweder rufen Sie Konfigurationsmethoden direkt im Server- und Clientcode auf (Informationen hierzu finden Sie unter Programmgesteuerte Konfiguration), oder Sie erstellen einen Remotekonfigurationsabschnitt und fügen diesen in die Konfigurationsdatei der Anwendung, in die Datei Web.config oder die Datei Machine.config, ein (Informationen hierzu finden Sie unter Remoteobjektkonfiguration). Jedes dieser beiden Konfigurationsverfahren hat Vorteile und Nachteile, daher richtet sich die Entscheidung nach den jeweiligen Anforderungen.

Um einen Typ remotefähig zu machen, müssen Sie die folgenden Informationen angeben:

  • Den für den Typ erforderlichen Aktivierungstyp.

  • Die vollständigen Metadaten zur Beschreibung des Typs.

  • Den registrierten Channel zur Behandlung von Anforderungen für den Typ.

  • Den URL, der das Objekt dieses Typs eindeutig identifiziert. Im Falle einer Serveraktivierung ist dies ein für den betreffenden Typ eindeutiger URI (Uniform Resource Identifier). Bei der Clientaktivierung wird ein für die betreffende Instanz eindeutiger URL zugewiesen.

Diese Informationen müssen sowohl der Remoteinfrastruktur des Clients als auch der des Servers bekannt sein, damit Proxys für das Remoteserverobjekt erstellt und Methodenaufrufe an dieses gesendet werden können. Es ist auch möglich, dass für Clients spezielle Konfigurationen verfügbar sind. Wenn die Clientanwendung ein clientaktiviertes Objekt anfordert, kann der Client eine Verlängerung der der Instanz zugeordneten Lebensdauer anfordern. Wenn der Client schließlich einen Rückruf erwartet, muss der Client selbst einen Channel aktiv registrieren, damit für diesen Rückruf eine Überwachung stattfinden kann. (In allen anderen Fällen sucht das .NET Remoting-System automatisch einen kompatiblen Clientchannel, wenn ein solcher im System vorhanden ist.) Server können eine Standardlebensdauer für clientaktivierte Objekte angeben oder angeben, dass eine bestimmte benutzerdefinierte Objektaktivierung verwendet werden muss.

Wenn Sie einen TCP- oder HTTP-Serverchannel für einen .NET Framework Remoting-Server konfigurieren und der Server mehrere Netzwerkschnittstellenkarten (Network Interface Cards, NICs) hat bzw. über eine NIC verfügt, deren IP-Adresse sich ändert (wie z. B. eine drahtlose NIC), müssen Sie den Channel so konfigurieren, dass die machineName-Eigenschaft verwendet wird. So stellen Sie sicher, dass .NET Framework Remoting den Server finden kann. Weitere Informationen finden Sie in der Beschreibung der machineName-Eigenschaft unter Konfigurationseigenschaften für Channel und Formatierungsprogramme.

Wenn Sie alle Informationen über das remotefähige Objekt bereitstellen, bevor Sie eine Instanz zu erstellen versuchen, können Sie das Schlüsselwort new (New in Visual Basic) verwenden. Andernfalls müssen Sie entweder Activator.GetObject oder Activator.CreateInstance verwenden.

Hinweis

Obwohl die oben genannte Konfigurationsdatei nur wenige Einstellungen enthält, treten hier die meisten Probleme bei der Verwendung von .NET Remoting auf, da einige dieser Einstellungen falsch sein können oder nicht den Konfigurationseinstellungen für Clientanwendungen entsprechen. Leicht kann ein Name falsch eingegeben, ein Port vergessen oder ein Attribut ignoriert werden. Wenn Probleme mit der Remoteanwendung auftreten, überprüfen Sie zunächst die Konfigurationseinstellungen.

Siehe auch

Referenz

Remoting Settings Schema

Konzepte

Fragen zu Metadaten
Aktivierungs-URLs
Programmgesteuerte Konfiguration
Automatische Deserialisierung in .NET Framework Remoting
Konfigurationseigenschaften für Channel und Formatierungsprogramme
Hosten von Remoteobjekten in Internetinformationsdienste
Remotingbeispiel: Hosten in Internetinformationsdienste

Weitere Ressourcen

Übersicht über .NET Framework Remoting