Как использовать двойную службу WCF через Интернет?

Я следовал этому руководству (по крайней мере, мой WCF основывался на этом , потому что тогда мне нужно работать одинаково): http://www.eggheadcafe.com/tutorials/wcf/b5ada8df-58c5-492f-b368-457b3a4f137c/notify-client-applications-using-wcf-callbacks.aspx

На моем компьютере все работает очень хорошо , но мне нужно использовать его через Интернет. При попытке сделать это я услышал (через интернет), что лучше использовать netTcpBiding.

У меня будет сервер, который будет знать количество онлайн-клиентов. Мне нужна служба WFC на моем IIS на сервере, а служба Windows использует ее и уведомляет об этом. Мне нужен обратный вызов, потому что сервер когда-нибудь должен иметь возможность выполнять некоторые команды на клиенте.

Я был бы очень рад, если бы кто-нибудь мог мне помочь.

Заранее спасибо,

Редактировать:

Поясняю: я просто не смог заставить его работать через Интернет. Не могли бы вы, ребята, показать мне, как я могу изменить свои конфигурации (Web.config и App.config), чтобы использовать netTcpBinding и работать через Интернет?

Еще раз спасибо,

Изменить 2:

Мой Web.config в моем WCFServiceApplication:



  
    
  
  
    
      
        
          
          
          
            
          
        
      
    
    
      
        
          
            
          
        
        
      
    
    
      
        
          
          
        
      
    
    
  
  
    
  

Мой App.config в моем WindowsService:



  
    
      
        
          
          
          
            
          
        
      
    
    
      
        
          
        
      
    
  

Простое изменение его на netTcpBinding не работает...

Но я был бы достаточно рад, чтобы иметь возможность запускать это через Интернет... Я опубликовал WCFService на IIS. Ссылки:

https://www2.tcenter.com.br/monitor/PCWatcherWCFService.svc

ИЛИ

http://www2.tcenter.com.br:8080/monitor/PCWatcherWCFService.svc

Простого изменения конфигурации достаточно, чтобы заставить его работать через Интернет? как я уже сказал, локально это работает просто отлично.

Я думал, что простое изменение адреса конечной точки на клиенте на один из URL-адресов над ним сработает, но это не сработало...

Пример, который вы связали, размещает службу на WPF. Я не знаю, применимо ли это к моему сценарию...

Я думаю, что буду придерживаться DualHttpBinding, вы не думаете, что переадресация портов хороша для моих нужд, у меня может быть много клиенты в одной интрасети, и маршрутизатор решает, какой из них он собирается отправлять информацию, потому что это нехорошо, верно? или есть способ заставить маршрутизатор правильно реагировать на каждую машину, подключающуюся к моему веб-серверу через один и тот же порт?! (просто спрашиваю, хе-хе-хе)

Заранее большое спасибо,

Редактировать от 21.06.2012:

Спасибо за прочтение. Мне не удалось заставить службу работать с netTcpBinding в локальной сети. Я сделал пробный образец своего cenario. Это здесь. Называется DualCommunicationTest.

Когда я начал этот пост, я просто хотел узнать, как запустить этот кенарий в Интернете. Только то. Пока я искал решение, прежде чем публиковать здесь, я прочитал, что netTcpBinding лучше. Поэтому я спросил об этом. Это был просто побочный вопрос.

Итак... мои текущие нужды в посте:

Как использовать образец, который я разработалв Интернете.

ИЛИ

Как заставить образец, который я разработал, работать с netTcpBinding И затем иметь возможность использовать его в Интернете. (Я почти уверен, что Clunky Coderнаучил меня второй части, как опубликовать net.tcp в Интернете с помощью IIS и прочего, большое спасибо за это, но я не смог проверить это еще, потому что я еще не мог сделать netTcp.)

Извините, если я был недостаточно ясен, мой английский не так хорош. извините и еще раз большое спасибо.

5
задан Community 23 May 2017 в 12:24
поделиться