요구 사항에 따라 역순으로 또는 컬렉션을 반환해야합니다.C# - 컬렉션 충분하거나 LINQ의 comobination 성능을 향상시킬 것입니다?
입니다. (샘플이 제공됩니다)
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;
}
}
}
}
}
질문 : 우리는 시작하는 수준의 프로그래머는 다음과 같은 컬렉션을 디자인
- 우리가 효율성을 개선하기 위해 다른 컬렉션 타입을 사용할 수 있습니까?
- LINQ와 Collection을 함께 사용하면 코드가 축소됩니까? (우리는 LINQ에 익숙하지 않습니다.)
모두에게 감사 드리며 귀하의 조언을 따르 겠습니다. – user160677
우리 프로젝트 책임자는 "방과후에도 그는 그런 나쁜 코딩 라인을 개발하지 않았습니다"라는 명령을 던졌습니다. 우리는 충격을 받았습니다. 이것이 우리가 게시 한 이유입니다. 모두 감사합니다. – user160677