2014-08-27 5 views
0

У меня есть сервер, который подключен к нескольким клиентам (с WCF и netTcpBinding).WCF-вызов сервера Метод клиента

В неопределенный момент времени я хочу, чтобы сервер вызывал метод конкретного клиента (и имел строку в качестве параметра). Сервер знает только, к какому клиенту он хочет позвонить.

В принципе, одному клиенту приходится ждать, пока сервер отправит ему сообщение (но пока другие клиенты также вызовут сервер), и серверу необходимо точно знать, какой клиент ему нужно позвонить. (У клиента есть атрибут, и сервер хочет вызвать метод на клиенте с определенным атрибутом)

Есть ли способ сделать это?

EDIT: Я думал о возможности, но я думаю, что есть лучший способ. На данный момент клиент вызовет метод с параметрами, определяющими ip и порт клиента. Сервер добавит его в список и когда сервер захочет позвонить клиенту, он ищет список для атрибута и подключается к клиенту (на клиенте услуга размещается до тех пор, пока клиент ждет)

ответ

1

WCF уже поддерживает эту встроенную систему. Вам необходимо создать duplex contract. Затем сервер может вызывать любые подключенные клиенты, когда захочет.