Udostępnij za pośrednictwem


ConfigurationCodeGenerator

ConfigurationCodeGenerator to narzędzie, którego można użyć do uwidocznienia niestandardowych implementacji kanału w systemie konfiguracji. Dzięki temu użytkownicy kanału niestandardowego mogą konfigurować kanał przy użyciu pliku config tak samo, jak w przypadku konfigurowania powiązania dostarczonego przez system, takiego jak NetTcpBinding lub powiązania niestandardowego TcpTransportBindingElementprzy użyciu polecenia .

Podczas pisania niestandardowego kanału i uwidaczniania go w modelu programowania przy użyciu nowego BindingElement lub Binding, należy utworzyć zestaw klas, aby można było skonfigurować BindingElement go Binding przy użyciu pliku .config. Możesz użyć narzędzia ConfigurationCodeGenerator, aby wygenerować te klasy i ulepszyć środowisko klienta.

Aby skompilować narzędzie

  1. Aby skompilować rozwiązanie, postępuj zgodnie z instrukcjami w temacie Building the Windows Communication Foundation Samples (Tworzenie przykładów programu Windows Communication Foundation).

  2. Kompilowanie rozwiązania generuje jeden plik: ConfigurationCodeGenerator.exe. Plik SampleRun.cmd zawiera przykładowy wiersz polecenia, który pokazuje, jak używać tego narzędzia do generowania klas dla przykładu Transport: UDP .

Aby uruchomić narzędzie

  1. W wierszu polecenia wpisz następujące polecenie, jeśli masz zarówno typ niestandardowy BindingElement , jak i typ niestandardowy Binding :

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

    Lub wpisz następujące polecenie, jeśli masz tylko typ niestandardowy BindingElement :

    ConfigurationCodeGenerator.exe /be:YourCustomBindingElementTypeName /dll: TheAssemblyWhereThisTypeIsDefined
    

    Lub wpisz następujące polecenie, jeśli masz tylko typ niestandardowy Binding :

    ConfigurationCodeGenerator.exe /sb:YourCustomStdBindingTypeName /dll:TheAssemblyWhereThisTypeIsDefined
    

    Polecenie generuje trzy pliki .cs dla BindingElement (jeśli określono /be: opcja), pięć .cs plików dla standardu Binding (jeśli określono /sb: opcja) i .xml pliku.

    1. Jeśli użyto opcji /be, jeden z plików .cs implementuje BindingElementExtensionSection element powiązania. Ten kod uwidacznia system BindingElement konfiguracji, aby inne powiązania niestandardowe mogły używać elementu powiązania. Inne pliki mają klasy reprezentujące wartości domyślne i stałe. Pliki mają //TODO komentarze, aby przypomnieć o zaktualizowaniu wartości domyślnych.

    2. Jeśli określono /sb opcji, dwa z plików .cs implementują StandardBindingElement odpowiednio element i StandardBindingCollectionElement , który uwidacznia standardowe powiązanie z systemem konfiguracji. Inne pliki mają klasy reprezentujące wartości domyślne i stałe. Pliki mają //TODO komentarze, aby przypomnieć o zaktualizowaniu wartości domyślnych.

      Jeśli określono /sb: opcja CodeToAddTo<YourStdBinding>.cs zawiera kod, który należy ręcznie dodać do klasy, która implementuje powiązanie standardowe.

    Plik SampleConfig.xml zawiera kod konfiguracji, który należy dodać do pliku konfiguracji, który rejestruje programy obsługi zdefiniowane w poprzednim kroku 1 lub 2.