Хорошо - вот краткое изложение некоторых раздражающих проблем WCF, с которыми я столкнулся при миграции, надеюсь, кому-то это поможет.
Проблема 1 - «Эта коллекция уже содержит адрес со схемой http. Может быть не более одногоадрес по схеме в этой коллекции. "
Это вызвано, я думаю, моим веб-сервером, имеющим несколько веб-сайтов с несколькими заголовками узлов.Решение найдено здесь: Ошибка запуска службы WCF "Эта коллекция уже содержит адрес со схемой http" .
Я только что добавил baseAddressPrefixFilter:
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix="http://yoururl.blahblah.com/" />
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
Проблема 2: Я получил The authentication scheme ' NTLM' is not supported.
ошибку.Я боролся с этим некоторое время, но в конце концов перезагрузка заставила его уйти (хотя я тоже это сделал (http://bytes.com/topic/net/answers/705912-authentication-scheme-ntml-not-supported):
# change directory to c:\inetpub\admin scripts first
cscript adsutil.vbs set w3svc/NTAuthenticationProviders "Negotiate,NTLM"
В моей конфигурации был пробел после первой запятой, не знаю,это вызывало проблему.
Проблема 3: После перезагрузки я получил ошибку .404.
Первое, что я предположил, было то, что wcf не был настроен для размещения на моем сервере.поэтому я запустил: (http://msdn.microsoft.com/en-us/library/ms732012.aspx)
serviceModelReg.exe -i
Но реальный источник 404 был вызван тем, что я пытался перейти на http://yoururl/somewhere.svc вместо http://yoururl.blahblah.com/somewhere.svc (т.е. мой baseAddressPrefixFilterбыл причиной моего 404).
Надеюсь, это поможет!