Udostępnij za pośrednictwem


Fabryka kanałów konfiguracji

Przykład ConfigurationChannelFactory obejmuje użycie elementu ConfigurationChannelFactory<TChannel>. Umożliwia ConfigurationChannelFactory<TChannel> centralne zarządzanie konfiguracją klienta WCF. Może to być również przydatne w scenariuszach, w których konfiguracja jest wybrana lub zmieniona po czasie ładowania domeny aplikacji.

Demonstracje

ConfigurationChannelFactory<TChannel>

Dyskusja

W tym przykładzie pokazano, jak użyć ConfigurationChannelFactory<TChannel> polecenia , aby dodać określony plik konfiguracji do aplikacji klienckiej bez konieczności używania domyślnego pliku konfiguracji aplikacji.

Przykład składa się z dwóch projektów. Pierwszy projekt to prosta usługa, która jest uruchamiana w celu odpowiadania na komunikaty pochodzące z klientów. Drugi projekt to aplikacja kliencka, która kompiluje dwa ConfigurationChannelFactory<TChannel> obiekty przy użyciu ExeConfigurationFileMap elementu dla pliku konfiguracji Test.config i używa ich do komunikowania się z usługą. Obaj klienci komunikują się z usługą przy użyciu konfiguracji określonej w pliku Test.config.

Poniższy kod dodaje niestandardowy plik konfiguracji do aplikacji klienckiej.

ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = "Test.config";
Configuration newConfiguration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);

ConfigurationChannelFactory<ICalculatorChannel> factory1 = new ConfigurationChannelFactory<ICalculatorChannel>("endpoint1", newConfiguration, new EndpointAddress("http://localhost:8000/servicemodelsamples/service"));
ICalculatorChannel client1 = factory1.CreateChannel();

Aby skonfigurować, skompilować i uruchomić przykład

  1. Otwórz program Visual Studio z uprawnieniami administratora.

  2. Kliknij prawym przyciskiem myszy rozwiązanie ConfigurationChannelFactory (2 projekty), a następnie wybierz pozycję Właściwości.

  3. W obszarze Wspólne właściwości wybierz pozycję Projekt startowy, a następnie kliknij pozycję Wiele projektów startowych.

  4. Przenieś projekt Usługi na początek listy z akcją "Start", a następnie przenieś projekt Klient po projekcie Usługi, a także z akcją "Uruchom", aby projekt klient był wykonywany po projekcie Usługi.

  5. Kliknij przycisk OK, a następnie naciśnij klawisz F5 (lub Ctrl+F5), aby uruchomić przykład.