Гость
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Нужен совет по кофнигурации WCF / 16 сообщений из 16, страница 1 из 1
03.06.2013, 00:36
    #38283092
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
Здравствуйте,подскажите ,пожалуйста,как реализовать связь клиентов со службой по локальной сети?на локальном работает всё, служба хостится в Win службе.
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <behaviors>
            <serviceBehaviors>
                <behavior name="Metadata">
                    <serviceMetadata httpGetEnabled="true" httpGetUrl="http://localhost:8080/testService/meta" />
                </behavior>
            </serviceBehaviors>
        </behaviors>
        <bindings>
            <basicHttpBinding>
                <binding name="NoSecBinding" />
              
            </basicHttpBinding>
        </bindings>
        <services>
            <service behaviorConfiguration="Metadata" name="testServiceLib.testService">
                <clear />
                <endpoint address="http://localhost:8080/testService" binding="basicHttpBinding"
                    bindingConfiguration="NoSecBinding" contract="testServiceLib.Itest"
                    listenUriMode="Explicit" />
                <endpoint address="net.tcp://localhost:8081/testService" binding="netTcpBinding"
                    bindingConfiguration="" contract="testServiceLib.Itest" />
          <endpoint address="http://localhost:8080/testService/mex" binding="mexHttpBinding"
                        contract="IMetadataExchange"/>
              <endpoint address="net.tcp://localhost:8081/testService/mex" binding="mexTcpBinding"
                        contract="IMetadataExchange"/>
              <endpoint address="net.tcp://192.168.0.7:8083/testService/mex" binding="mexTcpBinding"
                      contract="IMetadataExchange"/>
            </service>
        </services>
    </system.serviceModel>
</configuration>


вот примерная конфигурация хоста
...
Рейтинг: 0 / 0
03.06.2013, 09:24
    #38283187
Sergey TSV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
IamGrey,

Вообще не должно быть разницы, на одной машине или в локальной сети находится служба и клиент, все должно работать. Причина в другом может быть. Правильные ли указаны адреса у службы и клиента? Если ли права у службы (firewall, брандмауэр не блокирует)? Служба успешно запустилась и работает? Ну и если все нормально, то какая ошибка вылетает?
...
Рейтинг: 0 / 0
03.06.2013, 10:00
    #38283213
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
>IamGrey, сегодня, 00:36 [14381621]
>Здравствуйте,...

На удаленном компьютере разреши удаленный доступ (Панель управления --> Система --> ... --> Свойства системы --> Удаленный доступ) и посмотри межсетевой экран на предмет доступа к нужным портам.

С уважением, Владимир.
...
Рейтинг: 0 / 0
03.06.2013, 19:07
    #38284255
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
Sergey TSV,
т.е я на хосте пишу для net.tcp://localhost:<порт>/ ,а на клиенте уже указывать могу net.tcp://192.168.0.7/ к примеру?
...
Рейтинг: 0 / 0
03.06.2013, 19:08
    #38284258
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
ВМоисеев,

Спасибо,сегодня попробую
...
Рейтинг: 0 / 0
03.06.2013, 20:49
    #38284361
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
вот код службы
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>

  <system.web>
    <compilation debug="true" />
  </system.web>
  
  <system.serviceModel>
    <services>
      <service name="testServiceLib.testService">
        <host>
          <baseAddresses>
         
           <add baseAddress = "net.tcp://localhost:8081/testService" /> 
      
          </baseAddresses>
        </host>
   
                  <endpoint address =""
                           binding="netTcpBinding"
                           contract="testServiceLib.Itest" />

        <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange"/>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior>
                   <serviceDebug includeExceptionDetailInFaults="False" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>



вот конфиг хоста (пока он просто в консольном приложении)
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <behaviors>
            <serviceBehaviors>
                <behavior name="Metadata">
                    <serviceMetadata httpGetEnabled="false" httpGetUrl="" />
                </behavior>
            </serviceBehaviors>
        </behaviors>
        <bindings>
            <basicHttpBinding>
                <binding name="NoSecBinding" />
              
            </basicHttpBinding>
        </bindings>
        <services>
            <service behaviorConfiguration="Metadata" name="testServiceLib.testService">
                <clear />
      
          <endpoint address="net.tcp://localhost:80/testService" binding="netTcpBinding"
                    bindingConfiguration="" contract="testServiceLib.Itest" />
      
            <endpoint address="net.tcp://localhost:80/testService/mex" binding="mexTcpBinding"
                        contract="IMetadataExchange"/>
             
            </service>
        </services>
    </system.serviceModel>
</configuration>



и вот конфиг клиента
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <bindings>
            <netTcpBinding>
                <binding name="NetTcpBinding_Itest" />
            </netTcpBinding>
        </bindings>
        <client>
            <endpoint address="net.tcp://localhost:80/testService" binding="netTcpBinding"
                bindingConfiguration="NetTcpBinding_Itest" contract="ServiceReference1.Itest"
                name="NetTcpBinding_Itest">
                <identity>
                    <userPrincipalName value="GGREYZ\Сергей" />
                </identity>
            </endpoint>
        </client>
    </system.serviceModel>
</configuration>




в итоге,даже на локальной машине выдает ошибку :Не удалось подключиться к net.tcp://localhost:80/testService. Попытки подключения выполнялись в течение интервала времени 00:00:02.0826628. Код ошибки TCP 10061: Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение 127.0.0.1:80.

Вариации портов пробовал различные, фаерволы,брандмауэр отключены
...
Рейтинг: 0 / 0
03.06.2013, 20:56
    #38284367
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
насчет вариации портов наврал,по порту 8732 всё сработало, тогда вот вопрос,если я на клиенте пропишу вот такой конфиг:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <bindings>
            <netTcpBinding>
                <binding name="NetTcpBinding_Itest" />
            </netTcpBinding>
        </bindings>
        <client>
            <endpoint address="net.tcp://192.168.0.7:8732/testService" binding="netTcpBinding"
                bindingConfiguration="NetTcpBinding_Itest" contract="ServiceReference1.Itest"
                name="NetTcpBinding_Itest">
              
            </endpoint>
        </client>
    </system.serviceModel>
</configuration>


где 192.168.0.7:8732 адрес машины,где располагается служба,должно работать?или же на хосте надо прописывать дополнительную точку? что-то по типу:
Код: xml
1.
2.
3.
4.
 <endpoint address="net.tcp://192.168.0.7:8732/testService" binding="netTcpBinding"
                    bindingConfiguration="" contract="testServiceLib.Itest" />
<endpoint address="net.tcp://192.168.0.7:8732/testService/mex" binding="mexTcpBinding"
                        contract="IMetadataExchange"/


P.S. работу на клиенте по сети,нет возможности проверять постоянно, поэтому извиняюсь за подобное вопросы
...
Рейтинг: 0 / 0
03.06.2013, 23:50
    #38284472
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
попробовал запустить с другого компа ошибка:Дополнительные сведения: Во время проверки подлинности не были выполнены требования безопасности удаленного узла. Попробуйте увеличить ProtectionLevel или ImpersonationLevel.

конфиг клиента:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="NetTcpBinding_Itest" />
</netTcpBinding>
</bindings>
<client>
<endpoint address="net.tcp://192.168.0.7:8732/testService" binding="netTcpBinding"
bindingConfiguration="NetTcpBinding_Itest" contract="ServiceReference1.Itest"
name="NetTcpBinding_Itest">

</endpoint>
</client>
</system.serviceModel>
</configuration>
...
Рейтинг: 0 / 0
04.06.2013, 11:37
    #38284886
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
есть какие - то предположения?
...
Рейтинг: 0 / 0
04.06.2013, 11:43
    #38284903
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
>IamGrey, вчера, 23:50 [14386598]
>
Попробуй блокировать security хоста и клиента
<bindings>
<netTcpBinding>
<binding name="NetTcpBinding_Itest">
<security mode="None" />
</binding>
</netTcpBinding>
</bindings>

С уважением, Владимир.
...
Рейтинг: 0 / 0
04.06.2013, 11:55
    #38284929
Sergey TSV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
IamGrey,

Попробуйте следующую примерную настройку для сервера:

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
  <system.serviceModel>
    <services>
      <service name="WcfWindowsService.MyService" behaviorConfiguration="myServiceBehavior">
        <host>
          <baseAddresses>
            <add baseAddress="net.tcp://localhost:8732/testService" />
          </baseAddresses>
        </host>
        <endpoint address="" binding="netTcpBinding" bindingConfiguration="bindConfig" contract="WcfWindowsService.IMyContract" />
        <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" />
      </service>
    </services>
    
    <behaviors> 
      <serviceBehaviors>
        <behavior name="myServiceBehavior">
          <serviceMetadata httpGetEnabled="false"/>
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>

    <bindings>
      <netTcpBinding>
        <binding name="bindConfig">
          <security mode="None">
          </security>
        </binding>
      </netTcpBinding>
    </bindings>
  </system.serviceModel>



На клиенте автоматически сгенерируйте прокси, и проверьте в config чтобы VS вставила правильный адрес сервиса. Должно получиться.
...
Рейтинг: 0 / 0
05.06.2013, 21:09
    #38287446
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
большое вам спасибо,всё заработало,но возможно появятся новые вопросы,буду вам очень благодарен,если поможете вновь =)
...
Рейтинг: 0 / 0
05.06.2013, 23:19
    #38287591
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
у меня служба коннектится к БД,сейчас логин и пароль прописаны руками,возможно ли в файле настроек ,чтобы при запуске службы логин и пароль брался из этого файла?хост службы будет Виндосовский. На мой взгляд,придется перекомпилировать службу
...
Рейтинг: 0 / 0
06.06.2013, 09:25
    #38287779
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
>IamGrey, вчера, 23:19 [14397352]
> ... сейчас логин и пароль прописаны руками ...

Попробуй так:

App.config
. . .
<appSettings>
<add key="strLogin" value="Вася"/>
<add key="strPassword" value="Gthz"/>
</appSettings>
. . .

Host
. . .
//-- Получим доступ к разделу appSettings файла app.config
NameValueCollection appSettings = ConfigurationManager.AppSettings; //-- Получим Path каталога файла настройки
string strLogin = appSettings["strLogin"];
string strPassword = appSettings["strPassword"];
. . .

С уважением, Владимир
...
Рейтинг: 0 / 0
06.06.2013, 09:42
    #38287808
IamGrey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
Спасибо,сегодня попробую
...
Рейтинг: 0 / 0
06.06.2013, 13:09
    #38288208
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужен совет по кофнигурации WCF
>IamGrey, сегодня, 09:42 [14398003]
>
Не навязываюсь, но хочу дать один совет, - хранить аутентификационную информацию в открытом виде в app.config не есть хорошая идея. На мой взгляд, лучше в конфигурации прописать путь (path) к текстовому файлу настройки на съёмном носителе (типа a:\myconfig.txt). Запустили сервис, - съемный носитель в сейф.

С уважением, Владимир.
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Нужен совет по кофнигурации WCF / 16 сообщений из 16, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]