Гость
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Клиент WCF сервиса с NetTcpBinding для Modern UI (Metro) приложения / 6 сообщений из 6, страница 1 из 1
24.04.2013, 13:19
    #38238094
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Клиент WCF сервиса с NetTcpBinding для Modern UI (Metro) приложения
Коллеги, нужна помощь.

Имею:
1. WCF сервис с привязкой NetTcpBinding на хосте консольное приложение.
2. Из клиентского консольного приложения всё ок.
3. Идентичный код для Metro приложения дает исключение.

Код: plaintext
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.
35.
36.
37.
38.
39.
40.
41.
Тестируемый код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Channels;
using System.Text;

namespace ns_User {
  [ServiceContract]
  public interface IUser {
    [OperationContract]
    byte[] Test(byte[] Info);
  }
  //-- Локальная реализация функциональных контрактов 
  public partial class clsUser : ClientBase<ns_User.IUser>, ns_User.IUser {

    public clsUser() {
    }

    public clsUser(string endpointConfigurationName)
      : base(endpointConfigurationName) {
    }

    public clsUser(string endpointConfigurationName, string remoteAddress) :
      base(endpointConfigurationName, remoteAddress) {
    }

    public clsUser(string endpointConfigurationName, EndpointAddress remoteAddress) :
      base(endpointConfigurationName, remoteAddress) {
    }

    public clsUser(Binding binding, EndpointAddress remoteAddress)
      : base(binding, remoteAddress) {
    }

    public byte[] Test(byte[] Info) {
      return base.Channel.Test(Info);
    }
  }
}
. . .
Код: plaintext
1.
   ns_User.clsUser user = new ns_User.clsUser(new NetTcpBinding(), new EndpointAddress(sURI));  
   byte[] xb = user.Test(new byte[2] { 3, 3 });

Исключение:

The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was '00:00:59.9959977'.

Разрешение вопросов, связанных с исключениями: System.ServiceModel.CommunicationException

С уважением, Владимир
...
Рейтинг: 0 / 0
24.04.2013, 13:34
    #38238131
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Клиент WCF сервиса с NetTcpBinding для Modern UI (Metro) приложения
Извините, вкралась ошибка.
Второй фрагмент кода выглядит так:

Код: plaintext
1.
2.
3.
4.
      NetTcpBinding binding = new NetTcpBinding();
      binding.Security.Mode = SecurityMode.None;
      binding.TransferMode = TransferMode.Buffered;
      ns_User.clsUser user = new ns_User.clsUser(binding, new EndpointAddress(sURI));
      byte[] xb = user.Test(new byte[2] { 3, 3 });
Владимир
...
Рейтинг: 0 / 0
14.05.2013, 12:51
    #38256451
SeVa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Клиент WCF сервиса с NetTcpBinding для Modern UI (Metro) приложения
ВМоисеевИзвините, вкралась ошибка.
Второй фрагмент кода выглядит так:

Код: plaintext
1.
2.
3.
4.
      NetTcpBinding binding = new NetTcpBinding();
      binding.Security.Mode = SecurityMode.None;
      binding.TransferMode = TransferMode.Buffered;
      ns_User.clsUser user = new ns_User.clsUser(binding, new EndpointAddress(sURI));
      byte[] xb = user.Test(new byte[2] { 3, 3 });
Владимир

1.Приложению должно быть дано разрешение на доступ к сети
2. Я уже писал, что winrt полностью асинхронен и при вызове метода сервиса должен быть суффикс Async.
Те. user.Test Async .Result

В сети полно примеров.
...
Рейтинг: 0 / 0
24.05.2013, 13:53
    #38272072
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Клиент WCF сервиса с NetTcpBinding для Modern UI (Metro) приложения
Продолжаю попытки добиться доступа к WCF сервису со стороны клиента Modern UI с привязкой net.tcp.
Схему тестирую в виртуальной среде VirtualBox. Гостевые машины - Win8. На одной сервис, на другой клиент. Если клиент консольное приложение, сервис асинхронный - всё ок.
Если клиент Modern UI, то имею при отладке -
Ислючение:Перехвачено: "Could not connect to net.tcp://169.254.95.215:8000/ns_User.rService_User. The connection attempt lasted for a time span of 00:00:03.0781384. TCP error code 10013: Сделана попытка доступа к сокету методом, запрещенным правами доступа 169.254.95.215:8000. " (System.ServiceModel.CommunicationException)
Перехвачено System.ServiceModel.CommunicationException: "Could not connect to net.tcp://169.254.95.215:8000/ns_User.rService_User. The connection attempt lasted for a time span of 00:00:03.0781384. TCP error code 10013: Сделана попытка доступа к сокету методом, запрещенным правами доступа 169.254.95.215:8000. "
Time: 22.05.2013 22:33:47
Поток:<Без имени>[16068]

Подскажите, что это - запрещенные права доступа и как с этим бороться.

С уважением, Владимир.
...
Рейтинг: 0 / 0
24.05.2013, 14:57
    #38272287
Lelouch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Клиент WCF сервиса с NetTcpBinding для Modern UI (Metro) приложения
ВМоисеев,

Вам постом выше написали что приложению надо дать разрешение на доступ к сети.
http://msdn.microsoft.com/en-us/library/windows/apps/hh464936.aspx
...
Рейтинг: 0 / 0
24.05.2013, 18:01
    #38272712
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Клиент WCF сервиса с NetTcpBinding для Modern UI (Metro) приложения
>SeVa, Lelouch
Огромное спасибо.

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


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