title: Entity Framework Include without nested properties
body: <p>I have two related entities called DataTag and TagSource that look like the following:</p>
  
  <pre><code>public class DataTag : BaseModel
  {
      [Column("DataTagId")]
      public override Guid ID { get; set; }
      public string Tag { get; set; }
  
      public Guid TagSourceId { get; set; }
      public TagSource TagSource { get; set; }
  }
  
  public class TagSource : BaseModel
  {
      [Column("TagSourceId")]
      public override Guid ID { get; set; }
      public string Description { get; set; }
      public bool IsInternal { get; set; }
      public string Source { get; set; }
  
      public ICollection&lt;DataTag&gt; DataTags { get; set; }
  }
  </code></pre>
  
  <p>I am allowing the user to Include the navigation properties through the url like "/api/DataTags?Include=TagSource". The problem is when I include the TagSource, it also includes the collection of DataTags in that object which I don't want unless the user specifies it (For example "/api/DataTags?Include=TagSource.DataTags".  Is there any way to stop that property from being loaded when I include the TagSource? I have tried making the properties virtual and turning lazy loading off globally but that didn't work. The reason I haven't marked them virtual is because I am using AutoMapper and I only want to include the navigation properties that the user specifies.</p>