Member 10095430 Ответов: 1

Служба Wcf не работает при размещении в библиотеке классов


Я пытаюсь реализовать библиотеку классов, которая используется для размещения службы WCF. Он содержит файл app. config. Та же библиотека, которую я использовал в исполняемом файле.
Когда я попытался сделать библиотеку классов исполняемой, она работает нормально, появляется узел службы.
Когда я ссылаюсь на dll и пытаюсь сделать ServiceHost. Open() Я получаю следующую ошибку:

{"Service' ServiceClass ' имеет нулевые конечные точки приложения (неинфраструктуры). Это может быть связано с тем, что для вашего приложения не был найден файл конфигурации, или с тем, что в файле конфигурации не было найдено элемента службы, соответствующего имени службы, или с тем, что в элементе службы не были определены конечные точки."}

Я понял, что app.config в dll недоступен, я попытался переместить конфигурацию в app.config исполняемого файла, он работает.

Есть ли какой-нибудь способ получить доступ к app.config библиотеки dll?

пожалуйста помочь

Что я уже пробовал:

Я пытался найти решение этой проблемы во многих блогах, но никакого конкретного решения не было

1 Ответов

Рейтинг:
1

PeejayAdams

Вместо того чтобы создавать конечную точку с помощью app. config, вы можете сделать это в коде - что-то вроде:

using System.ServiceModel.Description;
.
.
.
Uri baseAddress = new Uri("http://SomePath/MyService.svc");
.
BasicHttpBinding binding = new BasicHttpBinding();
EndpointIdentity identity = EndpointIdentity.CreateDnsIdentity("localhost");
EndpointAddress address = new EndpointAddress(baseAddress, identity);
.
MyService.MyServiceClient client = new MyService.MyServiceClient(binding, address);
client.DoSomething();