2017-06-13 208 views
1

我需要創建一個返回3-4個課程的方法。對象使用數據進行初始化,並返回3-4個課程的列表。用方法返回元素列表

這怎麼辦?我創建了一個類類型的方法。我如何添加這些對象來列出並返回它們?

我要做的就是:

List<DummyCourse> GetDummyCoursesList() 
{ 
    var Course1 = new DummyCourse() 
    { 
     CourseId = 1, 
     Name = "DataStructures", 
     CourseLength = 4, 
     CourseType = 1, 
     CreatedAt = DateTime.Now, 
     CreatedBy = "Teacher", 
     ModifiedAt = DateTime.Now, 
     ModifiedBy = "Teacher" 
    }; 
    var Course2 = new DummyCourse() 
    { 
     CourseId = 2, 
     Name = "Mathematics", 
     CourseLength = 3, 
     CourseType = 2, 
     CreatedAt = DateTime.Now, 
     CreatedBy = "Instructor", 
     ModifiedAt = DateTime.Now, 
     ModifiedBy = "Instructor" 
     }; 
     var Course3 = new DummyCourse() 
     { 
     CourseId = 3, 
     Name = "Programming Fundamentals", 
     CourseLength = 4, 
     CourseType = 1, 
     CreatedAt = DateTime.Now, 
     CreatedBy = "Teacher ", 
     ModifiedAt = DateTime.Now, 
     ModifiedBy = "Teacher Assistant" 
     }; 
} 

回答

3

你只是創建的實例,但你永遠不知道什麼回來。使用return關鍵字,並明確要返回的內容:不只是幾個實例,而是一個由剛創建的實例組成的新列表。 (成像,你可以只返回一個列表與課程之一:如何將編譯器知道該挑)

將這個在你的方法結束:

return new List<DummyCourse>() { Course1, Course2, Course3 }; 
+0

因此而不是使用Add()方法爲每個實例的整個列表將被完全恢復? – Saniya

+0

呃,'{...}'本身就是一個'Add'。您可以創建一個新列表,添加項目並返回該列表,但這只不過是額外的行。 –

+0

是的,我明白你的觀點。謝謝:) – Saniya

0

之前創建列表實例,後添加您的課程實例到列表並返回列表

List<DummyCourse> dc=new List<DummyCourse>(); 
dc.Add(Course1); 
dc.Add(Course2); 
dc.Add(Course3); 

return dc; 
+0

你做了什麼?請不要在這裏轉儲你的代碼,*解釋*你做了什麼! –

0

嘗試增加類對象,列出對象,然後返回

List<DummyCourse> dummyCourseList =new List<DummyCourse>(); 

dummyCourseList.Add(Course1); 
dummyCourseList.Add(Course2); 
dummyCourseList.Add(Course3); 

return dummyCourseList ; 
0

而不是列表,你也可以只返回一個IEnumerable<DummyCourse>:中

IEnumerable<DummyCourse> GetDummyCoursesList() 
{ 
    yield return new DummyCourse() 
    { 
     CourseId = 1, 
    }; 
    yield return new DummyCourse() 
    { 
     CourseId = 2, 
    }; 
    yield return new DummyCourse() 
    { 
     CourseId = 3, 
    }; 
}