Глядя на создание клиента, который отправляет объекты с сериализованным сообщением обратно на сервер через WCF.
Чтобы облегчить работу конечного разработчика (разных отделов), было бы лучше, чтобы им не нужно было знать, как редактировать их конфигурационный файл для настройки данных конечной точки клиента.
Тем не менее, было бы прекрасно, что конечная точка не была встроена/жестко закодирована в Client.
Мне кажется, что сценарий микширования будет самым простым решением для развертывания:
IF (описанный в config) USE config file ELSE возвращает к жестко запрограммированной конечной точке.
Что я узнал:
-
new Client();
завершается сбой, если определение файла конфигурации не найдено. -
new Client(binding,endpoint);
работает
поэтому:
Client client;
try {
client = new Client();
}catch {
//Guess not defined in config file...
//fall back to hard coded solution:
client(binding, endpoint)
}
Но есть ли способ проверить (кроме try/catch), чтобы убедиться, что в файле конфигурации объявлена конечная точка?
Не может ли вышеупомянутое не работать, если оно определено в файле конфигурации, но не настроено правильно? Было бы хорошо различать два условия?