title: Find the position of a List Item in a List based upon specifice criteria using LINQ
body: <p>Something similar to <a href="https://stackoverflow.com/questions/8209197/linq-find-in-which-position-is-my-object-in-list">linq find in which position is my object in List</a>, except his accepted answer is evaluating at an object level.</p>
  
  <p>Say I have </p>
  
  <pre><code>public interface IFoo{
      string text {get;set;}
      int number {get;set;}
  }
  </code></pre>
  
  <p>and </p>
  
  <pre><code>public class Foo : IFoo{
      public string text {get;set;}
      public int number {get;set;}
  }
  </code></pre>
  
  <p>Now I have a list collection of <code>IFoo</code> like so:</p>
  
  <pre><code>public IList&lt;IFoo&gt; Foos;
  </code></pre>
  
  <p>I want to write a method that brings back the index(es) of <code>Foos</code> based upon a property value and/ or values (for example, <code>text</code> or <code>number</code> in this case) so I can do something like:</p>
  
  <pre><code>var fooIndexes = Foos.GetIndexes( f =&gt; f.text == "foo" &amp;&amp; f.number == 8 );
  </code></pre>
  
  <p>How would I write that?</p>