我有一個返回IEnumerable的DAL方法。我想要一個業務對象列表List<Person>
。如何從永久返回類型構建列表?當我檢查Visual Studio中的返回值時,我會看到所有的屬性。我只需要製作清單。如何從IEnumerable創建列表<T>?
謝謝!
我有一個返回IEnumerable的DAL方法。我想要一個業務對象列表List<Person>
。如何從永久返回類型構建列表?當我檢查Visual Studio中的返回值時,我會看到所有的屬性。我只需要製作清單。如何從IEnumerable創建列表<T>?
謝謝!
new List<Person>(MyMethod())
只需使用Enumerable<T>.ToList
:
IEnumerable<T> source = // get data from some source;
List<T> list = source.ToList();
另外,有List<T>
構造的overload接受一個IEnumerable<T>
:
IEnumerable<T> source = // get data from source;
List<T> list = new List<T>(source);
或
List<T> list = new List<T>(// get data from source);
如果IEnumerable
包含已知類型T
的對象,你可以簡單地「轉換」它的IEnumerable<T>
,然後使用ToList
擴展方法獲得的清單:
IEnumerable foo; // obviously this needs to have a "real" value
var list = foo.Cast<T>().ToList();
可以使用.ToList ()獲取結果時。像這樣:
List<Person> lstPerson = DAL.GetPersonList().ToList();
'當我檢查visual studio的返回值時,我看到所有的屬性.'然後它不是'IEnumerable'。 – SLaks