ConfigurationCodeGeneratorConfigurationCodeGenerator

Der ConfigurationCodeGenerator ist ein Tool, mit dem Sie Ihre Implementierungen von benutzerdefinierten Kanälen für das Konfigurationssystem verfügbar machen können.The ConfigurationCodeGenerator is a tool that you can use to expose your custom channel implementations to the configuration system. Auf diese Weise können Benutzer den benutzerdefinierten Kanal wie bei vom System bereitgestellten Bindungen (wie NetTcpBinding) oder benutzerdefinierten Bindungen mit dem TcpTransportBindingElement mithilfe einer .config-Datei konfigurieren.This allows users of your custom channel to configure your channel by using a .config file just as they would configure a system-provided binding such as NetTcpBinding or a custom binding using the TcpTransportBindingElement.

Wenn Sie einen benutzerdefinierten Kanal schreiben und ihn mit einem neuen BindingElement oder einer neuen Binding für das Programmiermodell verfügbar machen, müssen Sie eine Reihe von Klassen erstellen, damit das BindingElement bzw. die Binding mit einer .config-Datei konfiguriert werden kann.When you write a custom channel and expose it to the programming model by using a new BindingElement or Binding, you must create a set of classes to make the BindingElement or Binding configurable using a .config file. Mit dem Tool ConfigurationCodeGenerator können Sie diese Klassen generieren und Ihren Kunden die Arbeit erleichtern.You can use the ConfigurationCodeGenerator tool to generate these classes and enhance your customer's experience.

So erstellen Sie das ToolTo build the tool

  1. Führen Sie zum Erstellen der Projektmappe die Anweisungen im Erstellen der Windows Communication Foundation-Beispiele.To build the solution, follow the instructions in Building the Windows Communication Foundation Samples.

  2. Beim Erstellen der Projektmappe wird eine Datei generiert: ConfigurationCodeGenerator.exe.Building the solution generates one file: ConfigurationCodeGenerator.exe. Die Datei "samplerun.cmd" hat eine Beispielbefehlszeile, das veranschaulicht, verwenden Sie dieses Tool zum Generieren der Klassen für die Transport: UDP Beispiel.The file SampleRun.cmd has a sample command line that shows how to use this tool to generate the classes for the Transport: UDP sample.

So führen Sie das Tool ausTo run the tool

  1. Wenn Sie sowohl einen benutzerdefinierten BindingElement-Typ als auch einen benutzerdefinierten Binding-Typ haben, geben Sie an der Eingabeaufforderung Folgendes ein:At the command prompt type the following if you have both a custom BindingElement type and a custom Binding type:

    ConfigurationCodeGenerator.exe /be:YourCustomBindingElementTypeName /sb:YourCustomStdBindingTypeName /dll:TheAssemblyWhereTheseTypesAreDefined  
    

    Wenn Sie nur einen benutzerdefinierten BindingElement-Typ haben, geben Sie Folgendes ein:Or type the following if you have only a custom BindingElement type:

    ConfigurationCodeGenerator.exe /be:YourCustomBindingElementTypeName /dll: TheAssemblyWhereThisTypeIsDefined  
    

    Wenn Sie nur einen benutzerdefinierten Binding-Typ haben, geben Sie Folgendes ein:Or type the following if you have only a custom Binding type:

    ConfigurationCodeGenerator.exe /sb:YourCustomStdBindingTypeName /dll:TheAssemblyWhereThisTypeIsDefined  
    

    Der Befehl generiert drei .cs-Dateien für das BindingElement (wenn sie die Option "/be:" angegeben haben), fünf .cs-Dateien für die normale Binding (wenn Sie die Option "/sb:" angegeben haben), und eine .xml-Datei.The command generates three .cs files for the BindingElement (if you specified the /be: option), five .cs files for the standard Binding (if you specified the /sb: option), and a .xml file.

    1. Bei Verwendung der Option "/be" implementiert eine der .cs-Dateien den BindingElementExtensionSection für Ihr Bindungselement.If you used the /be option, one of the .cs files implements the BindingElementExtensionSection for your binding element. Dieser Code macht Ihr BindingElement für das Konfigurationssystem verfügbar, sodass Ihr Bindungselement auch von anderen benutzerdefinierten Bindungen verwendet werden kann.This code exposes your BindingElement to the configuration system, so that other custom bindings can use your binding element. Die anderen Dateien enthalten Klassen, die Standardwerte und Konstanten darstellen.The other files have classes that represent defaults and constants. Die Dateien enthalten //TODO-Kommentare, um Sie daran zu erinnern, die Standardwerte zu aktualisieren.The files have //TODO comments to remind you to update the default values.

    2. Wenn Sie die Option "/sb" angegeben haben, implementieren zwei der .cs-Dateien ein StandardBindingElement bzw. ein StandardBindingCollectionElement, das Ihre Standardbindung für das Konfigurationssystem verfügbar macht.If you specified the /sb option, two of the .cs files implement a StandardBindingElement and a StandardBindingCollectionElement respectively, which exposes your standard binding to the configuration system. Die anderen Dateien enthalten Klassen, die Standardwerte und Konstanten darstellen.The other files have classes that represent defaults and constants. Die Dateien enthalten //TODO-Kommentare, um Sie daran zu erinnern, die Standardwerte zu aktualisieren.The files have //TODO comments to remind you to update the default values.

      Wenn Sie die /sb angegeben: option enthält die Datei CodeToAddTo<YourStdBinding> .cs Code, den Sie manuell in die Klasse einfügen müssen, die Ihre standardbindung implementiert aufweist.If you specified the /sb: option the CodeToAddTo<YourStdBinding>.cs has code that you must manually add into the class that implements your standard binding.

    Die Datei "SampleConfig.xml" enthält den Konfigurationscode, den Sie der Konfigurationsdatei hinzufügen müssen, die die oben in Schritt 1 oder 2 definierten Handler registriert.The SampleConfig.xml file contains the configuration code that you must add to the configuration file that registers the handlers defined in the previous step 1 or 2.

Siehe auchSee Also