I think there is serialization problem, you can find exact error just need to add below code in service config in <configuration>
section.
After config update "App_tracelog.svclog"
file will create, where your service exist just need to open .svclog
file and find red color line on left side panel which is error and see its description for more info.
I hope this will help to find your error.
<configuration>
...
...
<system.diagnostics>
<sources>
<source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing">
<listeners>
<add name="ServiceModelTraceListener" />
</listeners>
</source>
<source name="System.ServiceModel" switchValue="Verbose,ActivityTracing">
<listeners>
<add name="ServiceModelTraceListener" />
</listeners>
</source>
<source name="System.Runtime.Serialization" switchValue="Verbose,ActivityTracing">
<listeners>
<add name="ServiceModelTraceListener" />
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="App_tracelog.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" name="ServiceModelTraceListener" traceOutputOptions="Timestamp" />
</sharedListeners>
</system.diagnostics>
</configuration>
Update:
If you will not able to find updated "App_tracelog.svclog"
file then please find "<some GUID>App_tracelog.svclog"
like "a39e3026-5dd8-4d39-842a-04d486615eedApp_tracelog.svclog"