По нашему опыту, есть две основные причины этого типа сбоя:
1) Сериализация на стороне сервера.Это может быть связано с тем, что классы не сериализуемы, или с попытками сериализации абстрактных классов без использования атрибута KnownType.
2) Сериализация на стороне клиента из-за путаницы WCF между несколькими классами типов Collection или Dictionary, которые имеют одинаковыеобщая подпись.
Исходя из вашего описания, звучит так, как будто проблема с пунктом 1.
Лучший способ устранить такие проблемы WCF, как это, - добавить следующий блок в раздел конфигурации вашегоФайл web.config:
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="traceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="c:\log\WebTrace.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
После того, как вы попытаетесь использовать интерфейс и он потерпит неудачу, дважды щелкните файл svclog, и откроется инструмент просмотра журнала WCF.Любые возникающие исключения будут выделены красным цветом, и вы сможете углубиться в них, чтобы увидеть конкретную проблему, приводящую к сбою службы WCF.