Также проверьте, все ли классы, которые вы используете как часть аргументов метода, имеют атрибуты [DataContract] и [DataMember].Если все в порядке, вы можете попробовать трассировку WCF, чтобы точно определить проблему.
Включение происходит так (web.config):
<configuration>
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="traceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "c:\log\Traces.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
</configuration>
Полученный файлдважды щелкните по нему, и он будет открыт в трассировщике (часть инструментов Visual Studio).Ищите любые разделы RED, они приведут вас к любым исключениям, возникшим в переговорах клиент-сервер.
Надеюсь, это поможет, ура!