title: How to remove ambiguous method call in c#
body: <p>Here I have a simple scenario with two methods where I get an ambiguous invocation from one another:</p>
  
  <p>This is a my code:</p>
  
  <pre><code>public IEnumerable&lt;JobsViewModel&gt; GetJobsViewModels(Guid vesselId, int status, Func&lt;JobsNoSubsYpdcResult, bool&gt; predicate = null)
      =&gt; predicate == null
          ? Mapper.Map&lt;IEnumerable&lt;JobsViewModel&gt;&gt;(_procedureService.Tech_GetJobsNoSubsYPDC(vesselId, status))
          : Mapper.Map&lt;IEnumerable&lt;JobsViewModel&gt;&gt;(_procedureService.Tech_GetJobsNoSubsYPDC(vesselId, status).Where(predicate));
  
  public IEnumerable&lt;JobsViewModel&gt; GetJobsViewModels(Guid vesselId, int status, Func&lt;JobsViewModel, bool&gt; predicate = null)
      =&gt; predicate == null
          ? GetJobsViewModels(vesselId, status)
          : GetJobsViewModels(vesselId, status).Where(predicate);
  </code></pre>
  
  <p>I dont like changing the names of methods but from the second one I get the error message: </p>
  
  <blockquote>
    <p>Ambiguous Invocation</p>
  </blockquote>
  
  <p>I would like to call first one from second one like I am trying to do, does anybody know how can I do this without changing the method names otherwise I am supposed to change them ?</p>