2012-11-27 192 views
1

基本上我將一個SQL數據錶轉換爲我可以成功執行的通用列表。但我無法弄清楚如何返回列表對象。我得到一個錯誤,說是一個變種 - 不能隱式轉換類型System.Collections.Generic.IList到System.Collections.Generic.List不能隱式轉換類型System.Collections.Generic.IList System.Collections.Generic.List

什麼是正確的方式返回列表類型列表?

public List<MyObject> GetAllMyObjects() 
{ 
    String command = "select * from names "; 
    DataTable tableResult = DataTableToList.ExecuteDataTable(command, CommandType.Text, null,connectionString); 

    IList<MyObject> theList = DataTableToList.ConvertTo<MyObject>(tableResult); 

    return // I’m not sure how to return theList here... 
} 
+4

通常你想返回接口,所以事情更鬆散耦合,因此更容易換出。你爲什麼要特意返回一個'List '? – tmesser

+0

@YYY通常我更喜歡返回可能的最低級別類型,除非我故意模糊了某些內容。如果他們想把它看作簡單的界面,如果他們需要訪問較低級別的類型(例如在這種情況下),那麼他們需要開始執行諸如導致問題的投射。 – Servy

回答

7

撥打ToList在您的theList對象上。

return theList.ToList(); 
+0

這個作品謝謝你。我得到的第一個答案是返回(列表)theList;除了語法之外,還有什麼不同? – user1842828

相關問題