Класс обслуживания, который реализует службу, - B
- и, насколько я могу судить, вы используете это правильно.
Контракт, который реализует этот класс обслуживания, IB
, но это не 'Это действительно отображается в вашей конфигурации.
Попробуйте:
<service name="B">
<endpoint address="ep1" binding="webHttpBinding" contract="a.IA" />
<endpoint address="ep2" binding="webHttpBinding" contract="b.IB" />
</service>
контракт в конечной точке должен обозначать сервисный интерфейс (обычно), который определяет метод сервисов - к этому интерфейсу должен быть применен атрибут [ServiceContract]
.
ОК - так что это опечатка, и ваши контракты верны - но мой вопрос заключается в следующем: являются ли a.
и b.
префиксы к контрактам, в которых находятся пространства имен этих контрактов?
И если да, то почему служебный тег тоже не использует это пространство имен?Имеет ли это значение, если вы измените его на name="b.B"
:
<service name="b.B">
<endpoint address="ep1" binding="webHttpBinding" contract="a.IA" />
<endpoint address="ep2" binding="webHttpBinding" contract="b.IB" />
</service>