2012-01-24 2 views
0

Я только что написал очень простой сервис WCF, который предоставляет базу данных SQL Server с OData. я могу подключиться к службе и делать запросы с использованием «http: // localhost: 3006», но не могу подключиться с использованием IP-адреса, даже на локальной машине.Отключено соединение OData WCF

я следовал основные шаги по созданию службы WCF и добавил библиотеку JSONP из MSDN, без выпуска: http://www.hanselman.com/blog/CreatingAnODataAPIForStackOverflowIncludingXMLAndJSONIn30Minutes.aspx

Я проверил мои журналы брандмауэра и ничего не нашел предлагая никаких проблем, хотя не должен брандмауэра даже не ставьте под сомнение при подключении к моему локальному адресу IPv4. брандмауэр Windows отключен и не может быть проблемой. я увидел эту строку в web.config:

<!-- 
<authentication mode="Forms"> 
    <forms loginUrl="~/Account/Login.aspx" timeout="2880" /> 
</authentication> 
--> 

и прокомментировал это, как вы можете видеть, но не решить проблему. как я могу подключиться к этому серверу отладки с удаленной машины?

ответ

2

я был в состоянии решить эту проблему, выполнив следующие действия:

выполнения обновления Windows (просто это сделать).
обновление до Visual Studio 2010 SP1.
получить приложение IIS Express.
в VS, щелкните правой кнопкой мыши узел проекта и нажмите «Использовать IIS Express ...»
в файле applicationhost.config IIS Express, вы получите список сайтов в xml
под узлом сайта, который ссылается на ваш проект , необходимо изменить привязку:

<binding protocol="http" bindingInformation=":[preferredport]:" /> 

где [preferredport] должен быть номером порта, который вы хотите использовать.
в командной строке введите это сказать httpsys слушать на всех ipv4 адреса:

netsh http add iplisten 0.0.0.0 

для ipv6, используйте эту строку:

netsh http add iplisten :: 

запустить проект с VS2010, и теперь вы должны быть возможность удаленного подключения.

это было так гораздо меньше хлопот с Linux остальных ... похоже на то, что должен был построен в, так как разработчики, очевидно, хотят, чтобы отлаживать с помощью удаленных клиентов ...

это может быть возможно сделать без IIS Express, но я не уверен, как настроить сервер отладки VS с соответствующими привязками, но этот метод делает трюк без использования Fiddler или WebMatrix или любого другого пушистого материала.

+0

+1 для публикации вашего решения! –

Смежные вопросы