Condividi tramite


GeneratoreDiCodiceDiConfigurazione

ConfigurationCodeGenerator è uno strumento che è possibile usare per esporre le implementazioni del canale personalizzate al sistema di configurazione. In questo modo gli utenti del canale personalizzato possono configurare il canale usando un file .config proprio come configurare un'associazione fornita dal sistema, NetTcpBinding ad esempio o un'associazione personalizzata usando .TcpTransportBindingElement

Quando si scrive un canale personalizzato e lo si espone al modello di programmazione usando un nuovo BindingElement o Binding, è necessario creare un set di classi per rendere configurabile BindingElement o Binding usando un file di .config. È possibile usare lo strumento ConfigurationCodeGenerator per generare queste classi e migliorare l'esperienza del cliente.

Per costruire lo strumento

  1. Per compilare la soluzione, seguire le istruzioni riportate in Compilazione degli esempi di Windows Communication Foundation.

  2. La compilazione della soluzione genera un file: ConfigurationCodeGenerator.exe. Il file SampleRun.cmd include una riga di comando di esempio che illustra come usare questo strumento per generare le classi per l'esempio Transport: UDP .

Per eseguire lo strumento

  1. Al prompt dei comandi digitare quanto segue se sono presenti sia un tipo personalizzato BindingElement che un tipo personalizzato Binding :

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

    In alternativa, digitare quanto segue se si dispone solo di un tipo personalizzato BindingElement :

    ConfigurationCodeGenerator.exe /be:YourCustomBindingElementTypeName /dll: TheAssemblyWhereThisTypeIsDefined
    

    In alternativa, digitare quanto segue se si dispone solo di un tipo personalizzato Binding :

    ConfigurationCodeGenerator.exe /sb:YourCustomStdBindingTypeName /dll:TheAssemblyWhereThisTypeIsDefined
    

    Il comando genera tre file .cs per BindingElement (se è stata specificata l'opzione /be: ), cinque file .cs per lo standard Binding (se è stata specificata l'opzione /sb: ) e un file .xml.

    1. Se è stata usata l'opzione /be, uno dei file .cs implementa l'elemento di associazione BindingElementExtensionSection. Questo codice espone il tuo BindingElement al sistema di configurazione, in modo che altri collegamenti personalizzati possano utilizzare il tuo elemento di collegamento. Gli altri file hanno classi che rappresentano le costanti e le impostazioni predefinite. I file hanno //TODO commenti per ricordare di aggiornare i valori predefiniti.

    2. Se hai specificato l'opzione /sb, due dei file .cs implementano rispettivamente un StandardBindingElement e un StandardBindingCollectionElement, che rende disponibile la tua associazione standard al sistema di configurazione. Gli altri file hanno classi che rappresentano le costanti e le impostazioni predefinite. I file hanno //TODO commenti per ricordare di aggiornare i valori predefiniti.

      Se è stata specificata l'opzione /sb: CodeToAddTo<YourStdBinding>.cs include codice da aggiungere manualmente alla classe che implementa l'associazione standard.

    Il file SampleConfig.xml contiene il codice di configurazione che è necessario aggiungere al file di configurazione che registra i gestori definiti nel passaggio 1 o 2 precedente.