title: Recognize WCF solution
body: <p>I am new in Web Service Developement in .NET. Now I am analyzing a big solution of dozens of projects. There I have project that uses a web service and I want to know if it is a <strong>WCF Service</strong> or some other kind like <strong>Web API</strong>...<br>
  In the past I used <strong>ASMX</strong> Web Services in .NET and you were able to recognize a <strong>ASMX</strong> web service via its file extension. But here I don't see any special extensions in the project. I have read that WCF Services have .svc files if they are hosted in IIS. But this project doesn't have a .svc file. So, what are the main characteristics which distinguish a WCF Service from other web services in .NET.
  The structure of the solution is as following:  </p>
  
  <pre><code>-Solution  
    +-CreateDocWebServiceInterface  
    +-CreateDocWebService
    +-...
  </code></pre>
  
  <p>The <code>CreateDocWebServiceInterface</code> looks like that:</p>
  
  <pre><code>namespace CreateDocWebServiceInterface
  {
      /// &lt;summary&gt;
      /// &lt;/summary&gt;
      [ServiceContract(Name = "ICreateDocWebService", Namespace = "http://www.standardlife.de/CreateDocWebService")]
      [RequiredParametersBehavior]
      [ServiceKnownType(typeof(Bookmark))]
      [ServiceKnownType(typeof(List&lt;Bookmark&gt;))]
      public interface ICreateDocWebService
      {
          [OperationContract]
          byte[] CreateDoc(OutputFormat OutputFormat, bool DuplexPrinting, List&lt;Document&gt; Documents);        
      }
  }
  </code></pre>
  
  <p>And the <code>CreateDocWebService</code> looks like that:</p>
  
  <pre><code>namespace CreateDocWebService
  {
      // single threaded, but each request is handled concurrent !
      [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall, ConcurrencyMode = ConcurrencyMode.Single, Namespace = "http://www.blablabla.de/CreateDocWebService")]
      public class CreateDocWebService : ICreateDocWebService
      {
          public byte[] CreateDoc(OutputFormat outputFormat, bool duplexPrinting, List&lt;Document&gt; documents)
          {
              bla bla bla
          }
      }
  }
  </code></pre>
  
  <p>It could be a Web Service with <strong>Web API</strong>, but as I know Web API web services consist of <strong>controllers</strong> which derive from the <code>ApiController</code>?!(Is this correct and the unique characteristic of Web Api Web Services?)
  So is this a WCF Service? And what is the unique characteristic of a WCF service and of an Web API Web Service</p>