C# - Collection is enough or comobination of LINQ will improve performance?
<p>According to the requirement we have to return a collection either in reverse order or as </p>

<p>it is. We, beginning level programmer designed the collection as follow :(sample is given)</p>

<pre><code>namespace Linqfying

{

 class linqy

  {
      static void Main()

      {

         InvestigationReport rpt=new InvestigationReport();

         // rpt.GetDocuments(true) refers 
        //  to return the collection in reverse order       


            foreach(  EnquiryDocument doc in rpt.GetDocuments(true)   )
            {

               // printing document title and author name     

             }
        }
  } 




 class EnquiryDocument

  {
       string _docTitle;

       string _docAuthor;

       // properties to get and set doc title and author name goes below 


      public EnquiryDocument(string title,string author)

      {
      _docAuthor = author;

      _docTitle = title;
      }

      public EnquiryDocument(){}

}



   class InvestigationReport

   {

       EnquiryDocument[] docs=new EnquiryDocument[3];

      public IEnumerable&lt;EnquiryDocument&gt; GetDocuments(bool IsReverseOrder)

       {

           /* some business logic to retrieve the document 

            docs[0]=new EnquiryDocument("FundAbuse","Margon");

          docs[1]=new EnquiryDocument("Sexual Harassment","Philliphe");

              docs[2]=new EnquiryDocument("Missing Resource","Goel"); 

         */ 


         //if reverse order is preferred

          if(IsReverseOrder)
          {

              for (int i = docs.Length; i != 0; i--)
              yield return docs[i-1];

          }

         else
          {
            foreach (EnquiryDocument doc in docs)
        {
             yield return doc;
            }
      }

      } 

}

 }
</code></pre>

<p><hr/></p>

<p>Question :</p>

<ul>

 <li> <i> Can we use other collection type to improve efficiency ? </i> </li>

 <li> <i> Mixing of Collection with LINQ reduce the code ? (We are not familiar with LINQ) </i> </li>

</ul>
