2012-03-23 67 views
2

要通過其他對象即時創建和分配類,我通常使用LINQ。可以在Linq-to-Objects中創建新的類型類嗎?

假設我有一個IQueryable<ProductForCart>對象從我的數據庫取出,對於某些原因,我需要創建一個IQuaryable<Product>其中每個Product屬性是從ProductForCart提取。

我簡單地做:

IQueryable<ProductForCart> productsForCart = ProductRepository.GetProductsForCart(); 

IQueryable<Product> products = productsForCart.Select(sc => new Product 
               { 
               ProdId = sc.ProdId, 
               ProdName = sc.ProdName, 
               //other properties 
               } 

這工作順利。但是,如果我有IList<ProductForCart>和​​它會引發運行時異常:

此函數只能從LINQ調用到實體。

我不知道LinqToObjects不支持這種分配。或者我錯過了什麼?

+1

你在_ //其他屬性_使用SqlFunctions來代替那些功能? – 2012-03-23 17:12:37

+0

是的,因爲它使用ToString()啓動另一個異常 – CiccioMiami 2012-03-23 17:45:39

回答

相關問題