Я знаю, что привязки WSDualHttpBinding, NetTcpBinding и NetPeerTcpBinding поддерживают операции обслуживания duplex/callback.WCF & ASP.NET: поддержка дуплексного использования с использованием AJAX
Я не могу найти нигде в Интернете, даже если кто-либо спрашивает, поддерживает ли дуплекс для аякс-вызовов. Может быть, причиной моей неспособности найти что-либо на этом является то, что я полностью недопонимаю какую-то ключевую концепцию WCF, которая ставит вопрос в самый тупой вопрос ...
Я знаю, что привязка webHttpBinding вместе с <enableWebScript/>
gneerates the js needed для прокси-объектов на стороне клиента.
Это невозможно, потому что услуги дуплекса нуждаются в обслуживании callbackservice, и нет возможности сделать это на стороне клиента? (Если это имеет смысл ..)
Приложение добавлено следующим образом:
1. WebSite1 - ajax вызывает WebSite1.MyClientService.
2. WebSite1.MyClientService - WCF Самостоятельное обслуживание, которое ссылается на DLL MyServiceProxies.
3. MyServiceProxies DLL - пользовательские прокси (используемые вместо «Добавить служебную ссылку» автоматически сгенерированные прокси), которые наследуются от ClientBase. Это просто делегирует фактические вызовы службы на base.Channel.OperationName() в [MyService: IMyService в WinService WCF Host EXE].
4. WinService WCF Host EXE - он работает как служба Windows, как одноэлементный, позволяющий многопоточные вызовы. Вызовы из WebSite1 запрашивают значения in-memory, хранящиеся в этом одноэлементном режиме. Этот синглтон будет в конечном итоге передавать все данные, хранящиеся в памяти, в базу данных через отдельный слой данных.
WinService настроен на использование дуплексных вызовов через net.tcp. WinService будет работать на том же компьютере, что и приложение IIS WebSite1.