Сервер не имеет представления о том, что клиент имеет в качестве контракта, а сервер знает, что клиент отправляет его в виде запроса SOAP, который должен содержать правильную информацию внутри, поэтому сантехника WCF найдет соответствующий контракт по типу службы и найдет операцию, которая будет соответствовать также.
В зависимости от настроек фильтра тип сервиса вместе с настройками ServiceModel может быть настроен на отказ от использования фильтрации, и в этом случае вам не нужно, например, сопоставлять пространства имен, более того, сервер может быть настроен таким образом, чтобы конкретный метод перехватывал все вызовы из клиенты, независимо от информации, размещенной в запросе SOAP.
Итак, ошибка, которую вы получаете, ясно говорит о том, что несоответствие фильтра означает, что либо свойство пространства имен контракта на клиенте не совпадает с сервером, либо параметры безопасности отличаются
для исправления пространства имен вы определяете контракт на клиенте следующим образом
[ServiceContract(
Namespace="namespaceuri",
Name="contractname")]
public interface IInstallerBootstrapperService {
[OperationContract(
Namespace="namespaceuri",
Action ="actionuri",
ReplyAction="replyactionuri")]
void Download( string path);
}
и свойство namespace обоих атрибутов должно совпадать с таковым на сервере.
для исправления других настроек, которые могут не соответствовать, вам необходимо знать, что за транзакция Flow, безопасность транспорта и сообщений, а также кодировка и версия сообщений конечной точки сервера
сначала попробуйте настройки по умолчанию для netTcp, которые могут совпадать