У меня есть два проекта в одном решении, сервис и приложение для потребителей. В службе у меня есть много классов, которые могут быть созданы при помощи приложения-потребителя, но некоторые классы недоступны. Нет разницы, кроме имени. Все классы являются общедоступными, поэтому все они должны быть видны. Есть ли проблемы с буферизацией или что-то еще, что может привести к тому, что проблема будет вести себя так?Невозможно получить доступ к классам через WCF
ответ
Потребитель не получает доступ к классам сервера при использовании WCF или других веб-служб/Удаление технологии. Вместо этого создаются классы прокси. Подумайте о них как о наборе интерфейсов, способных вызывать метод через границы приложений. Вы можете создавать экземпляры прокси-классов, но когда вы вызываете метод прокси-класса, он переходит в Службу и вызывает соответствующий метод класса, размещенного службой.
Необходимо использовать библиотеку классов и перемещать туда свои общие классы (и развертывать dll с помощью службы и потребителя), если обе стороны используют их.
Update (спасибо razlebe):
Бизнес-логика не должна использоваться совместно библиотек DLL. Он должен быть размещен сервером. Но имеет смысл разделить поддерживающие классы (например, класс, который форматирует данные), чтобы избежать дублирования кода.
Я предполагаю, что классы, которые «недоступны», были созданы после последнего поколения прокси (классы службы, на стороне клиента). Проверьте, помогает ли обновлять прокси.
Извините, что вы имеете в виду «Возрождение»? – MiscellaneousUser
Вы можете попытаться удалить свою службу Reference полностью, а затем добавить ее снова. – gdube
При обновлении класса обслуживания и смены интерфейса с помощью:
- Добавление метода (Ваш случай)
- Удаление метода
- Изменение подписи
Ваш потребитель должен узнать о изменение. У вас должно быть ссылка на службу поддержки (http://msdn.microsoft.com/en-us/library/bb628652.aspx) для восстановления прокси.
Как его обновить?
Проверьте здесь, чтобы посмотреть, как: http://msdn.microsoft.com/en-us/library/bb628652.aspx) Но один образ лучше, чем тысяча слов:
Я сделал это, обновил сервис службы справки, но ничего хорошего. Это не позволяет мне получить доступ к определенным, а не ко всем классам. – MiscellaneousUser
В справочной службе обратитесь к файлу Reference.cs (вам нужно открыть дополнительные свойства или перейти в проводник Windows). Это класс с прокси-кодом. Проверьте, есть ли у вас новые методы. –
Нет, там нет класса ResponseBusinessInterruptionCover, есть класс ResponsePremises, который имеет ту же подпись, что и та, которую я не вижу. Оба являются общедоступными, оба имеют стандартный конструктор и индивидуальную конструкцию. – MiscellaneousUser
- 1. Невозможно получить доступ к моим классам Propel
- 2. Невозможно получить доступ к локально размещенной службе wcf через Интернет
- 3. Доступ к бизнес-классам в WCF-методах
- 4. Получить доступ к другим классам
- 5. Почему можно получить доступ к личным данным/классам через отражение?
- 6. Невозможно получить доступ к классам в портативной библиотеке классов
- 7. Android - Невозможно получить доступ к некоторым классам в ** пакете android.telephony **
- 8. Как получить доступ к федеративному WCF через клиента проверки WCF?
- 9. Как получить доступ к внутренним классам через явное пространство имен?
- 10. Через метод get, получить доступ к другим классам Переменные
- 11. Невозможно получить доступ к jlabel через программу
- 12. Невозможно получить доступ к докеру через Интернет
- 13. Невозможно получить доступ к github через curl
- 14. Доступ к классам C#
- 15. Как получить доступ к классам в Java
- 16. Войти и получить доступ к классам?
- 17. Доступ к файлу службы WCF через поток
- 18. Доступ к сервису WCF через интернет
- 19. Ограничить клиенту WCF доступ к некоторым общедоступным классам и методам
- 20. Доступ к службе WCF через ASP.NET
- 21. Доступ к классам классов VBA
- 22. Java: Может ли LD_LIBRARY_PATH получить доступ к пути к классам?
- 23. NSMutableDictionary Доступ к различным классам
- 24. Невозможно получить доступ к WCF, размещенному в службе Windows
- 25. Доступ к NSMutableDictionary по классам
- 26. Не удается получить доступ к сервису WCF через браузер
- 27. Доступ к сервису WCF через интернет?
- 28. Невозможно добавить атрибуты к классам
- 29. Доступ к классам в векторах
- 30. Доступ к другим классам члену
Истина - хотя обязательно подумайте о своем дизайне и подумайте над тем, какая функциональность лучше всего открыта через интерфейс веб-сервиса, а также путем совместного использования общего кода в DLL. – razlebe