根据要求,我们必须以相反顺序或C# - 集合是足够的还是LINQ的组合将提高性能?
返回一个集合。我们,始平程序员设计的集合如下:(样品给出)
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<EnquiryDocument> 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;
}
}
}
}
}
问:
- 我们可以使用其他集合类型,以提高工作效率?
- Collection with LINQ的混合减少代码? (我们对LINQ不熟悉)
谢谢大家,我们会按照你的建议。 – user160677 2009-09-08 22:06:58
我们的项目主管刚刚下了一个命令,“即使在他上学的时候,他也没有编写这么糟糕的代码”。我们感到震惊,这就是我们发布这个的原因。谢谢大家。 – user160677 2009-09-08 22:10:56