I am having a problem adding a custom WCF service reference to my WPF application. I have been working on this service and application for nearly 6 months now and have never run into this issue until today. Whenever I try and add the WCF service via "Add Service Reference," all of my methods that return List are trying to return T[] instead. When I configure the service reference and change the collection type to "System.Collection.Generics.List", It shows in the status bar that it is updating the reference code, but the methods in the WPF application are throwing errors stating that it can't implicitly convert from List to Array. It seemed to have happened after I pushed an update to the server, but the only thing that was changed was the way one of my objects is initialized. I have tried the following so far; 

* Cleaned the project
* Cleaned the solution
* Rebuild the solution
* Manually deleted the obj/bin/Service Reference folders
* Removed and re-published the wcf service
* Restarted the server

Im at a complete loss and have no idea what to do at this point. Any help is greatly appreciated!

**Update**

I created a separate console project, and it hooks into the WCF service correctly once configured to return lists. Looks to be specifically an issue with the WPF project.

**Update 2**

I noticed the following errors showing up briefly when I try to build. They disappear after a while, but I don't know if this has anything to do with the issue. They are both in the App.config file.

* The 'bindingConfiguration' attribute is invalid - The value 'BasicHttpBinding\_ICustomService' is invalid according to its datatype 'serviceBindingConfigurationType' - The Enumeration constraint failed.
* The 'contract' attribute is invalid - The value 'CustomServerSvc.ICustomServer' is invalid according to its datatype 'clientContractType' - The Enumeration constraint failed.

**Update 3**

Interestingly, this only seems to happen on the client side randomly after a build.

Adding in my web.config per request.

```
<configuration>
  <configSections>
    <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
      <section name="UnifyServer.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    </sectionGroup>
  </configSections>
  <connectionStrings>
    <add name="DebugUnifyCS"
          connectionString="connectionString"
          providerName="System.Data.SqlClient" />
    <add name="UnifyCS"
          connectionString="connectionString"
          providerName="System.Data.SqlClient" />
  </connectionStrings>

  <appSettings>
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
  </appSettings>
  <system.web>
    <compilation debug="true" targetFramework="4.5" />
    <httpRuntime targetFramework="4.5"/>
  </system.web>
  <system.serviceModel>
    <client />
    <bindings>
      <basicHttpBinding>
        <binding name="myBasicBinding" maxBufferPoolSize="524288" maxBufferSize="2147483647"
          maxReceivedMessageSize="2147483647" receiveTimeout="00:30:00" sendTimeout="00:30:00">
          <readerQuotas maxDepth="128" maxStringContentLength="2147483647"
            maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
        </binding>
      </basicHttpBinding>
    </bindings>
    <!--<bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_IUnifyServer" >
          <security mode="None" />
        </binding>
      </basicHttpBinding>
    </bindings>-->
      <services>
        <service name="UnifyServer.UnifyServer">
          <endpoint address="UnifyServer" binding="basicHttpBinding" bindingConfiguration="myBasicBinding" contract="UnifyServer.IUnifyServer"></endpoint>
          <host>
            <baseAddresses>
              <add baseAddress="http://unifysrv2012:19081/"/>
            </baseAddresses>
          </host>
        </service>
        <service name="UnifyServer.ServiceEndpoint">
          <endpoint address="ServiceEndpoint" binding="basicHttpBinding" bindingConfiguration="myBasicBinding" contract="UnifyServer.IServiceEndpoint"></endpoint>
          <host>
            <baseAddresses>
              <add baseAddress="http://unifysrv2012:19081/"/>
            </baseAddresses>
          </host>
        </service>
      </services>
      <behaviors>
      <serviceBehaviors>
        <behavior>
          <!-- To avoid disclosing metadata information, set the values below to false before deployment -->
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <protocolMapping>
        <add binding="basicHttpsBinding" scheme="https" />
    </protocolMapping>    
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
    <!--
        To browse web app root directory during debugging, set the value below to true.
        Set to false before deployment to avoid disclosing web app folder information.
      -->
    <directoryBrowse enabled="true"/>
  </system.webServer>

  <applicationSettings>
    <UnifyServer.Properties.Settings>
      <setting name="UnifyServer_some_service" serializeAs="String">
        <value>https://some.url.com/some_service.asmx</value>
      </setting>
    </UnifyServer.Properties.Settings>
  </applicationSettings>
</configuration>

```