<provider>-Element (Instanz)
Dieses Thema bezieht sich auf eine veraltete Technologie, die zum Zwecke der Abwärtskompatibilität mit vorhandenen Anwendungen beibehalten wird und nicht für die neue Entwicklung empfohlen wird. Verteilte Anwendungen sollten jetzt mit Windows Communication Foundation (WCF) entwickelt werden.
Enthält den Channelsenkenanbieter für eine Channelsenke, der in die Channelsenkenkette eingefügt werden soll.
<provider/>
Hier überschreibt ein Anbieter den Standardserveranbieter für diesen Channel und wird zum neuen Standardanbieter für diese Channelvorlage.
<provider/>
Hier überschreibt ein Anbieter den Standardclientanbieter für diesen Channel und wird zum neuen Standardanbieter für diese Channelvorlage.
<provider/>
Hier überschreibt ein Serveranbieter den Standardanbieter für diese Channelinstanz.
<provider/>
Hier überschreibt ein Clientanbieter den Standardanbieter für diese Channelinstanz.
<provider
ref="ProviderTemplateReference"
type="ProviderType, ProviderAssembly"
customChannelSinkProperty="customProperty"
/>
Optionale Attribute
Attribut | Beschreibung |
---|---|
customChannelSinkProperty |
Gibt eine Eigenschaft für eine unterstützte benutzerdefinierte Channelsenke an. Sie können beliebig viele Eigenschaften für Anbieter und Channelsenken angeben, die von benutzerdefinierten Channelsenkenanbietern und deren Senken unterstützt werden könnten. Eine benutzerdefinierte Channelsenkeneigenschaft geben Sie mit einem Attribut-Wert-Paar an. Im folgenden Beispiel
ist das Benutzerdefinierte Daten von Senkenanbietern können hier ebenfalls angegeben werden. Es wird nur eine Knotenebene unterstützt. Im folgenden Beispiel
sind die zusätzlichen Informationen als ICollection von SinkProviderData im Konstruktor des Anbieters verfügbar. |
Erforderliche Attribute
Attribut | Beschreibung |
---|---|
Typ |
Gibt den vollständigen Typnamen des Channelsenkenanbieters und den Namen der Assembly an, die die Anbieterimplementierung enthält. Hierzu gehören die Version, die Kultur und der öffentliche Schlüssel, wenn die übergeordnete Assembly sich im globalen Assemblycache befindet. Dieses Attribut ist nur erforderlich, wenn Sie kein ref-Attribut verwenden. |
ref |
Gibt die ID der Vorlage für den Channelsenkeanbieter für die Channelsenke an, die der Client zur Verwendung registrieren wird. Wenn Sie ein ref-Attribut angeben, müssen Sie kein type-Attribut festlegen. |
Hinweise
Sie können auf eine andere Anbietervorlage verweisen, indem Sie den id-Wert dieser Vorlage für das ref-Attribut dieser Instanz bereitstellen. Durch die Angabe von Anbietern werden alle Standardanbieter überschrieben. Wenn im Verlauf der Channelsenken-Aufrufkette andere Anbieter aufgerufen werden sollen, müssen Sie diese hier angeben.
Instanzen des <provider>-Elements können an vier Stellen auftreten. Unter einem <channel>-Vorlagenelement (entweder im <serverProviders>-Element oder im <clientProviders>-Element) gibt dieses Element einen Anbieter an, der Standard-Senkenanbieter für den betreffenden Channel wird, wenn durch eine Anwendungsinstanz darauf verwiesen wird. Unter einem <application>-Element überschreibt das Element alle Standardsenken, die für diesen Channel konfiguriert worden sein könnten, wenn er sich in einer Vorlage befinden würde. Alle anderen Anbieter, die in der Aufrufkette vorhanden sein sollen, müssen Sie hier angeben, da dadurch alle Standardwerte, die in irgendeiner Vorlage festgelegt sind, überschrieben werden.
Beispiel
Die folgende Konfigurationsdatei weist HttpChannel mithilfe des <provider>-Instanzelements den "propsetter"-Channelsenkenanbieter und den "null"-Channelsenkenanbieter zu, die ihrerseits mit <provider>-Vorlagenelementen deklariert wurden. Außerdem wird der "propsetter"-Channelsenkenanbieter mit den benutzerdefinierten Anbietereigenschaften erstellt, die als Attribute für das Anbieterinstanzelement und als Name-Wert-Paare für das untergeordnete <endpoint>
-Attribut angegeben wurden.
<configuration>
<system.runtime.remoting>
<application>
<client>
<wellknown
type="RemoteType, RemoteAssembly"
url="http://computername:8080/RemoteType.rem"/>
</client>
<channels>
<channel ref="http">
<clientProviders>
<formatter ref="soap"/>
<provider
ref="propsetter"
username="bob"
writeToConsole="true"
>
<endpoint url="contoso.com:9000" someProperty="xyz" />
<endpoint url="contoso.com:9001" someProperty="123" />
</provider>
<provider ref="null" writeToConsole="true" />
</clientProviders>
</channel>
</channels>
</application>
<channelSinkProviders>
<clientProviders>
<provider
id="propsetter"
type="ChannelSinkPropertySetterProvider, SinkAssembly"
/>
<provider
id="null"
type="NullSinkProvider, SinkAssembly"
/>
</clientProviders>
</channelSinkProviders>
<debug loadTypes="true" />
</system.runtime.remoting>
</configuration>
Anforderungen
Konfigurationsdateien: Anwendungskonfigurationsdatei, Konfigurationsdatei für den Computer (Machine.config)
Siehe auch
Verweis
Schema für Remoteeinstellungen
Konzepte
Erstellungsdatum: 2010-02-13