Как скрыть конечные точки AutoQuery на странице метаданных на внешнем сервисе? - PullRequest
1 голос
/ 30 сентября 2019

У меня есть две службы: служба A и служба B. Служба A вызывает службу B, поэтому я добавил ссылку на модель службы службы B в службу A. Проблема, с которой я сталкиваюсь, заключается в том, что любые операции AutoQuery для службы Bотображается в метаданных службы А. Другие операции для службы B не отображаются, только операции AutoQuery. Есть ли какой-нибудь способ скрыть эти операции от службы B на странице метаданных службы A.

См. Изображение ниже, я выделил объекты запроса с ошибками.

Operations that should not be there.

1 Ответ

0 голосов
/ 30 сентября 2019

ServiceStack определяет, какие Сервисные Модели включать в свои метаданные Сервисов, используя ссылки на типы. 2 разных Сервисных Модели не должны иметь ссылки друг на друга, и в идеале должно быть только 1 Сервисная Модель на Приложение.

Таким образом, вы должны отделить любые ссылки Сборки ServiceModel, которые должны быть свободны от зависимостей , т. Е. Единственные ссылки, которые должна иметь ваша сборка ServiceModel, это на dep / impl-free ServiceStack.Interfaces.dll , которую вы можете сделать, скопировав нужные типы из другой сборки в вашу ServiceModel как отдельнуюклассы, в которых вы можете использовать Auto Mapping для копирования свойств между разными типами в разных сборках.

...