WCF ServiceContract и svcutil выпуск - PullRequest
       14

WCF ServiceContract и svcutil выпуск

0 голосов
/ 21 апреля 2010

У меня есть открытый интерфейс, автоматически сгенерированный bu svcutil:

[System.ServiceModel.ServiceContractAttribute(Namespace="...", ConfigurationName="...")]
public interface MyInterface

Тогда у меня есть веб-сервис asmx, унаследовавший его и работающий нормально.Я пытаюсь не конвертировать его в WCF, но когда я использую сервис (в коде asmx.cs) с помощью ServiceContract:

[ServiceContract(Namespace = "...")]
public class MyService : MyInterface 

Также я заэкранировал файл .svc и добавил параметр system.serviceModel вКонфигурационный файлЦель состоит в том, чтобы перенести службу asmx в службу WCF.

У меня есть эта ошибка:

Класс обслуживания типа MyService определяет и ServiceContract, и наследует ServiceContract от типаMyInterface.Наследование контракта может использоваться только среди типов интерфейса.Если класс помечен с помощью ServiceContractAttribute, он должен быть единственным типом в иерархии с ServiceContractAttribute.

Служба asmx по-прежнему работает нормально.Только .SVC дает мне проблемы.Мой вопрос, как это исправить.MyInterface - это интерфейс, поэтому я не вижу, в чем проблема и почему я все равно получаю ошибку.

Примечание. Я не хочу менять MyInterface, потому что он автоматически генерируется из svcutil из моей схемы wsdl, и яне хотите, чтобы этот интерфейс редактировался вручную.Основная идея заключается в том, чтобы типы сервисов автоматически генерировались из WSDL, и чтобы сохранить усилия моей команды по разработке с помощью ручного редактирования.

Любая помощь приветствуется.

1 Ответ

1 голос
/ 21 апреля 2010

Вам необходимо удалить ServiceContractAttribute из MyService класса. Этот атрибут уже определен в интерфейсе, и это правильный способ указать, что этот интерфейс будет отображаться как служба WCF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...