Хорошей альтернативой может быть создание прокси-серверов вручную из запущенной службы. Инструмент svcutil - это то, что Visual Studio использует при добавлении ссылки на службу. Используя это, вы можете сгенерировать прокси-класс в общем месте, а затем ссылаться на него в каждом проекте, который вам требуется, а также получить лучший контроль над вашими прокси-классами.
Например, чтобы сгенерировать прокси для службы с именем TestService , работающей локально на порту 8000, вы должны выполнить следующую команду в командной строке Visual Studio, сгенерировав прокси-класс TestServiceProxy.cs
в каталоге прокси .
cd "C:\src\proxies"
svcutil /noLogo /out:TestServiceProxy http://localhost:8000/TestService
Есть несколько других полезных параметров для инструмента, например:
Добавить /n:*,WcfServices.TestService
будет указывать пространство имен для прокси-класса.
Добавьте /config:TestServiceProxy.config
, и svcutil создаст образец файла конфигурации для использования TestService, включая конечные точки, привязки и т. Д.
Добавьте /r:"Common.dll"
, и прокси-класс, созданный svcutil, не будет иметь определений для типов, используемых службой, но определен в сборке Common.dll.
Используйте svcutil /?
для получения дополнительной информации.