title: MetaData with InheritedExport
body: <p>Im trying to export all classes which implement an <code>IJob</code> interface while also passing metadata at the individual class level. What I've tried:</p>
  
  <p>Export: </p>
  
  <pre><code>[InheritedExport(typeof(IJob))]
  public interface IJob
  {
      int Run();
  }
  </code></pre>
  
  <p>Import:</p>
  
  <pre><code>    [ImportMany]
      public IEnumerable&lt;Lazy&lt;IJob, IJobMetaData&gt;&gt; Jobs { get; set; }
  </code></pre>
  
  <p>Implementation:</p>
  
  <pre><code>[IgnoreJob(false)]
  public class MyJob : IJob
  {
      public int Run()
      {
          return 5;
      }
  }
  </code></pre>
  
  <p>Attribute setup:</p>
  
  <pre><code>[MetadataAttribute]
  [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
  public class IgnoreJobAttribute : ExportAttribute, IJobMetaData
  {
      public IgnoreJobAttribute(bool ignore)
          : base(typeof(IJobMetaData))
      {
          Ignore = ignore;
      }
  
      [DefaultValue(true)]
      public bool Ignore { get; set; }
  }
  </code></pre>
  
  <p>The above does <em>not</em> pass my metadata but if I remove the <code>InheritedExport</code> attribute and add an <code>Export</code> attribute to the individual implementation of IJob it works fine...</p>