Хотя уже слишком поздно, чтобы ответить, это может помочь кому-то еще.У нас есть веб-приложение, использующее Silverlight 4, установленное в различных тестовых средах.Это веб-приложение использует более одной службы WCF.Все сайты тестовой среды, кроме одного, постоянно терпели неудачу с сообщением «Строки ресурса отладки недоступны».Согласитесь, настоящее исключение было проглочено.Будучи приложением Silverlight, журналирования не было, и всегда казалось, что в компоненте Silverlight происходит сбой.Я подключил приложение в своей среде разработки к этой конкретной тестовой среде и обнаружил, что проблема на самом деле была в одной из служб WCF.Я исправил проблему на стороне службы, и компонент SL перестал иметь эту проблему.
Почему произошел сбой WCF?
Служба WCF имела следующий код в конструкторе:
public MyService()
{
//Create an instance of Data Lookup service asycnchronously.
if (_dataLookupSrvc == null)
{
try
{
System.Threading.Tasks.Task.Factory.StartNew(() => _dataLookupSrvc = new LookupDataService.LookupDataService());
}
catch (Exception ex)
{
_log.Error<Exception>(ex);
}
}
}
Кто-то переместил базовый LookupDataService.dll из служебной папки, что привело к сбою конструктора, но не сразу.Поскольку экземпляр LookupDataService был создан в анонимном методе, регистрация исключений в этом методе никогда не выполнялась.Как только LookupDataService.dll был удален в папку службы, сообщение «Отладка строк ресурса недоступна» исчезло.
Это была забавная погоня за диким гусем!