У меня есть 2 службы WCF, которые выставляют один и тот же объект. Предположим, что первая услуга (SerA) предоставляет класс (classA) и второй сервис (SerB), который добавляет заполненный классA, также предоставляет этот класс (поскольку этот класс включен в параметры). Теперь, когда я извлекаю классA из SerA, он объединяется с пространством имен SerA.classA, и когда я добавляю это, используя вторую службу, для этого требуется класс, такой как SerB.ClassA. Есть ли способ указать, что оба класса одинаковы. Я попытался изменить пространство имен в reference.vb, и он работает, но это будет реальной проблемой при обновлении ссылки на службу. Может ли кто-нибудь помочь мне в этом? СпасибоПубликация одного и того же класса дважды с использованием WCF
ответ
Вы можете поместить свое определение ClassA
(и других договоров) в библиотеку классов и ссылаться на него с обеих служб. Таким образом, оба должны использовать одно и то же определение DataContracts.ClassA
.
Это всегда хорошая идея, чтобы разделить ваши вещи обслуживания на отдельные проекты:
- услуг (услуги, работы, данные и, возможно, контракты сообщений) в одной библиотеке классов («Контракты») - возможно, даже до несколько библиотек
- реализации услуг (ы) в библиотеки классов
- хозяина (s) службы - в случае необходимости (не используя IIS) - в отдельную сборку (консольное приложение)
Таким образом, вы можете повторно использовать некоторые части ваших контрактов на обслуживание и, возможно, реализации.
MARC
НЕТ ответа на этот вопрос не так ли?
Проблема в том, справочная служба создает свое собственное определение класса ..
например, у меня есть класс «автомобиль» в общей библиотеке, и service1 службы WCF, который я использую из ClientProject но когда я добавить ссылку на Service1, вы получите
ClientProject.Service1_ref.Car
созданного остроумия hin Reference.cs
Сейчас я должен исправить это, изменив reference.cs, чтобы использовать общие классы каждый раз, действительно не очень хорошо.
редактировать: Этот парень имеет ответа, не используйте «Добавить ссылку на службу» его легко сделать это Elsewise: http://devx.com/codemag/Article/39837/1763/page/5 - Монстры X 0 сек назад редактировать
- 1. Сглаживание с использованием одного и того же псевдонима дважды
- 2. добавление одного и того же объекта дважды
- 3. Выбор одного и того же столбца дважды
- 4. несколько определений одного и того же класса
- 5. с использованием аксессуаров того же класса
- 6. Несколько функций с использованием одного и того же шаблона?
- 7. несколько слоев с использованием одного и того же листа спрайтов
- 8. Открытие одного и того же стола дважды в обновлении
- 9. Выполнение одного и того же C# приложения дважды
- 10. проверить NSString для одного и того же символа дважды
- 11. ошибка дублирования rownames с использованием rbind и чтение одного и того же файла csv дважды
- 12. OSX Yosemite getutxent() возвращает одного и того же пользователя дважды
- 13. OpenFileDialog - выбор одного и того же файла дважды
- 14. Методы класса вызова es6 из одного и того же класса
- 15. атрибут класса для двух экземпляров одного и того же класса
- 16. Несколько действий с использованием одного и того же прослушивателя
- 17. Чистые виртуальные функции с аргументами одного и того же класса
- 18. с использованием одного и того же экрана с различными конфигурациями
- 19. Публикация дважды на ту же страницу
- 20. с использованием одного и того же элемента управления ascx дважды при использовании Register (ASP.NET)
- 21. Поддержание открытых и точных версий одного и того же класса
- 22. индивидуально предназначаться несколько экземпляров одного и того же класса
- 23. объявление класса и переменной (одного и того же типа)
- 24. Java Несинхронизированные потоки с использованием одного и того же ресурса
- 25. Несколько приложений с использованием одного и того же контроллера - AngularJS
- 26. Несколько версий одного и того же пакета с использованием npmjs
- 27. Операция io с использованием одного и того же объекта потока
- 28. RestKit SerializationMimeType - десериализован с использованием одного и того же типа?
- 29. с использованием переменной вместо повторения одного и того же действия
- 30. Несколько экземпляров одного и того же скрипта с использованием Selenium
Это не работает Марк. У меня уже есть классы в другой библиотеке классов. У меня есть только контракты в том же проекте, что и служба wcf, и они просто выставляют классы из библиотеки классов. Но это все равно дает мне такую же ошибку! – Farax
Не на 100% уверены, что вы говорите: это DataContracts в общей библиотеке классов или в каждом из проектов обслуживания? Сам DataContracts должен находиться в общей общей библиотеке, иначе это никогда не будет работать. –