Ошибка подключения Silverlight wcf
Я около месяца на разработку моего приложения Silverlight (это мой первый). Все прошло довольно гладко до сегодняшнего дня, когда я неожиданно начал получать это сообщение:
Произошла ошибка при попытке сделать запрос к URI 'http://localhost:2682/Services/Authentication/LoginService.svc'. Это может быть связано с попыткой доступа к сервису междоменным способом без надлежащей междоменной политики или с политикой, которая не подходит для служб SOAP. Вам может потребоваться связаться с владельцем службы, чтобы опубликовать файл междоменной политики и убедиться, что он позволяет отправлять связанные с SOAP заголовки HTTP. Эта ошибка также может быть вызвана использованием внутренних типов в прокси-сервере веб-службы без использования атрибута InternalsVisibleToAttribute. Пожалуйста, смотрите внутреннее исключение для более подробной информации.
Я пользуюсь услугами WCF, и эта проблема никогда не возникала до сих пор. Я добавил файл clientdomain.xml и clientaccesspolicy.xml в свою папку [имя_проекта].web и переписал их примерно 1000 различными способами. Я также использовал Fiddler, и он показывает мне, что ошибка в обоих этих файлах, ошибка
[Fiddler] Сбой подключения сокета к localhost.
Код ошибки: 10061.
Невозможно установить соединение, потому что целевая машина активно отказалась от него. 127.0.0.1:2682
Я искал ошибку "10061", и это связано с определением сокета. Но я не мог найти никакого решения для этого.
Не знаю, имеет ли это какое-либо отношение к этому, но мой порт "ASP.net Development Server" - 6939.
Имейте в виду, что приложение НЕ развернуто, поэтому это происходит только локально. Я использую MS VS 2010 и MS SQL Server 2008.
Я делаю что-то не так или это проблема с Silverlight??
И последнее, я ничего не изменил в настройках порта, сокета или службы. Последнее, что я делал, было редактирование файла XAML на стороне клиента, и приложение начало выдавать мне эту ошибку.
Нужна помощь, ничего не могу сделать, пока это не будет решено!!!! Благодарю.
2 ответа
Я думаю, что вы используете ваше приложение на локальном хосте, и динамический порт назначается, и этот порт не фиксируется и каждый запуск, и это вызывает проблему отказа. если вы хотите это исправить, создайте твердый URL, например,
http://localhost/apps/Services/Authentication/LoginService.svc
Ну, вчера вечером, перед тем, как лечь спать, я заметил кое-что странное. В моем файле "ServiceReferences.ClientConfig" порты конечной точки для каждого из моих сервисов отличаются от тех, которые использовались на машине с Silverlight, поэтому, пытаясь догадаться (и потому что я достиг своей точки останова здравомыслия), я решил исключить все свои службы Ссылки и заново их добавить.
Я работал... иди разберись. До сих пор не знаю, почему это произошло, и если бы кто-то мог пролить свет на эту тему, я был бы признателен. Немного раздражает необходимость повторного добавления всех ссылок на мои услуги. Прямо сейчас у меня их всего 6, но в ближайшем будущем им может быть больше 20, и если это случится снова... ну, это будет настоящей болью...
Спасибо