Freigeben über


<formatter>-Element (Instanz)

Enthält den Channelempfängeranbieter für einen Formatierungsempfänger, der in die Channelempfängerkette eingefügt werden soll.

<configuration>
   <system.runtime.remoting>
      <channels>
         <channel>
            <serverProviders>
               <formatter/>

Hier überschreibt ein Formatierungsprogramm die standardmäßige Channelempfängerkette für diesen Channel und wird zum neuen Standard für diese Channelvorlage.

<configuration>
   <system.runtime.remoting>
      <channels>
         <channel>
            <clientProviders>
                 <formatter/>

Hier überschreibt ein Formatierungsprogramm die standardmäßige Channelempfängerkette für diesen Channel und wird zum neuen Standard für diese Channelvorlage.

<configuration>
   <system.runtime.remoting>
      <application>
         <channels>
            <channel>
               <serverProviders>
                  <formatter/>

Hier überschreibt ein Formatierungsprogramm die standardmäßige Channelempfängerkette für diese Channelinstanz.

<configuration>
   <system.runtime.remoting>
      <application>
         <channels>
            <channel>
               <clientProviders>
                  <formatter/>

Hier überschreibt ein Formatierungsprogramm die standardmäßige Channelempfängerkette für diese Channelinstanz.

<configuration>

  <system.runtime.remoting>-Element

    <application>-Element

      <channels>-Element (Instanz)

        <channel>-Element (Instanz)

          <clientProviders>-Element (Instanz)

            <formatter>-Element (Instanz)

<formatter 
   ref="FormatterReference"
   type="FormatterSinkProviderType, FormatterAssembly"
   customFormatterProperty="customProperty"
   includeVersions="true"
   strictBinding="false"
...typeFilterLevel="Low | Full"
/>

Attribute und Elemente

In den folgenden Abschnitten werden Attribute, untergeordnete sowie übergeordnete Elemente beschrieben.

Attribute

Attribut Beschreibung

ref

Erforderliches Attribut

Gibt die ID der Vorlage für den Formatierungsempfängeranbieter für den Formatierer an, den der Client zur Verwendung registrieren wird. Wenn Sie ein ref-Attribut angeben, müssen Sie kein type-Attribut festlegen.

type

Erforderliches Attribut

Gibt den vollständigen Typnamen des Formatierungsempfängeranbieters 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 kein ref-Attribut verwendet wird.

customFormatterProperty

Optionales Attribut.

Gibt eine Eigenschaft für einen unterstützten benutzerdefinierten Formatierer an. Sie können eine beliebige Anzahl von Formatierereigenschaften angeben, die von benutzerdefinierten Formatierern unterstützt werden können. Eine benutzerdefinierte Formatierereigenschaft wird mit einem Attribut-Wert-Paar angegeben. Beispiel: <formatter id="CustomFormatterSinkProvider" type="Namespace.CustomFormatterSinkProvider, CustomFormatters" customFormatterProperty="FormatterPropertyValue"/>

includeVersions

Optionales Attribut.

Gibt an, dass ein sendendes Formatierungsprogramm beim Serialisieren der Typinformationen vollständige Typ- und Assemblyversionsinformationen enthält. Wichtige Einzelheiten finden Sie im Abschnitt "Hinweise" weiter unten. Die Standardeinstellung für beide vom System bereitgestellten Formatierungsprogramme lautet true.

strictBinding

Optionales Attribut.

Gibt an, dass ein empfangendes Formatierungsprogramm zuerst versucht, den Typ anhand der vollständigen Versionsinformationen zu identifizieren, sofern diese vorhanden sind, bevor es nur den Typ- und den Assemblynamen ohne die Versionsinformationen verwendet. Wichtige Einzelheiten finden Sie im Abschnitt "Hinweise" weiter unten. Die Standardeinstellung für beide vom System bereitgestellten Formatierungsprogramme lautet false.

typeFilterLevel

Optionales Attribut.

Ein Zeichenfolgenwert, der die Ebene der automatischen Deserialisierung angibt, die ein Formatierer in der Serverchannelempfängerkette auszuführen versucht. Unterstützte Werte sind Low (der Standardwert) und Full. Weitere Informationen zu Deserialisierungsebenen finden Sie unter Automatische Deserialisierung in .NET-Remoting.

Diese Eigenschaft wird nur von Version 1.1 von .NET Framework für die folgenden Plattformen unterstützt: Windows 98, Windows NT 4.0, Windows Millenium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional und die Windows Server 2003-Familie.

Untergeordnete Elemente

Keines.

Übergeordnete Elemente

Element Beschreibung

application

Enthält Informationen zu den Remoteobjekten, die die Anwendung verwendet und verfügbar macht.

channel

Enthält die Channelvorlage, die die Anwendung angeben und konfigurieren kann, um mit Remoteobjekten zu kommunizieren oder Anforderungen für Remoteobjekte zu überwachen. An jeder Stelle, an der ein Channel für die Verwendung registriert werden kann, können Sie für das id-Attribut des Instanz-Channelelements das ref-Attribut dieser Vorlage festlegen.

channels

Enthält Channelvorlagen, über die die Anwendung mit Remoteobjekten kommuniziert. Channels, die unter diesem Element deklariert werden, sind für die Verweiserstellung an jeder Stelle verfügbar, an der ein Channel registriert ist.

clientProviders

Enthält Anbieter für Channelempfänger, die Bestandteil der standardmäßigen clientseitigen Channelempfänger-Aufrufkette für diese Channelvorlage werden sollen, wenn an anderer Stelle in der Konfigurationsdatei auf die Vorlage verwiesen wird. Wenn Sie Anbieter an einer der unten angegebenen Positionen festlegen, werden dadurch die Standard-Channelempfänger für diesen Channel überschrieben. Wenn solche Standard-Channelempfänger in die Channelempfänger-Aufrufkette für diese Vorlage eingefügt werden sollen, müssen Sie sie hier angeben.

configuration

Das Stammelement in jeder Konfigurationsdatei, das von der Common Language Runtime und den .NET Framework-Anwendungen verwendet wird.

system.runtime.remoting

Enthält Informationen zu Remoteobjekten und Channels.

Hinweise

Sie können auf eine Anbietervorlage verweisen, indem Sie den id-Wert dieser Vorlage als ref-Wert dieser Instanz verwenden. Auch wenn beliebig viele Vorlagen deklariert werden können, kann nur ein Formatierungsempfänger in einer Channelempfänger-Aufrufkette vorhanden sein.

Das <formatter>-Instanzelement kann an vier Stellen auftreten. Wird es unter einem <channel>-Vorlagenelement angegeben (entweder im <serverProvider>- oder im <clientProvider>-Element), gibt dieses Element einen Formatierer an, der jeden Standardformatierer des Channels überschreibt und zum Standardformatierungsempfänger für den betreffenden Channel wird, wenn durch eine **<channel->**Instanz einer Anwendung auf den Channel verwiesen wird. Wird das Element unter einem <application>-Element angegeben, überschreibt es alle Formatierungsempfänger, die in der aktuellen Channelinstanz oder -vorlage deklariert worden sein können.

Die folgende Tabelle zeigt die Interaktion zwischen dem includeVersions- und dem strictBinding-Attribut, wenn diese zusammen vorkommen.

includeVersions (sendendes Formatierungsprogramm) strictBinding (empfangendes Formatierungsprogramm) Art und Weise, in der der Typ geladen wird

true

true

Der exakte Typ wird geladen, oder eine TypeLoadException-Ausnahme wird ausgelöst.

false

true

Der Typ wird nur anhand des Typ- und des Assemblynamens geladen, oder eine TypeLoadException-Ausnahme wird ausgelöst.

true

false

Der exakte Typ wird geladen, falls vorhanden. Andernfalls wird der Typ nur anhand des Typ- und des Assemblynamens geladen. Wenn dies fehlschlägt, wird eine TypeLoadException-Ausnahme ausgelöst.

false

false

Der Typ wird nur anhand des Typ- und des Assemblynamens geladen, oder es wird eine TypeLoadException-Ausnahme ausgelöst.

Beispiel

In der folgenden Konfigurationsdatei wird eine <channel>-Instanz deklariert, die mithilfe des <formatter>-Instanzelements angibt, dass der Standard-BinaryClientFormatterSinkProvider die binäre Serialisierung für den HttpChannel verwenden soll.

<configuration>
   <system.runtime.remoting>
      <application>
         <channels>
            <channel ref="http">
               <clientProviders>
                  <formatter ref="binary"/>
               </clientProviders>
            </channel>
         </channels>
         <client>
            <wellknown 
               url="http://computername:80/RemoteType.rem" 
               type="RemoteType, RemoteAssembly"
            />
         </client>
      </application>
   </system.runtime.remoting>
</configuration>

Siehe auch

Referenz

Schema für Remoteeinstellungen
BinaryClientFormatterSink
SoapClientFormatterSink
BinaryServerFormatterSink
SoapServerFormatterSink

Footer image

Copyright © 2007 by Microsoft Corporation. Alle Rechte vorbehalten.