2012-03-22 86 views
-1

需要幫助,是新程序員,我想將IEnumerable轉換爲小數,thanx!更新股票是OrderdMaterials表中的字段無法將類型'System.Collections.Generic.IEnumerable <decimal>'隱式轉換爲'decimal'

partial void Quantity_Compute(ref decimal result) 
    { 
     // Set result to the desired field value 
     if (OrderdMaterialsCollection != null) 
     { 
      var myMat = OrderdMaterialsCollection.Select(a => a.UpdatedStock); 

      result = myMat; 

     } 

    } 
+1

您需要對您的股票價值進行一些彙總。例如。 .Sum() – 2012-03-22 15:07:50

+0

@lazyberezovsky OP可能不想要一個聚合,但它確實帶來了問題。 「OrderdMaterialsCollection」是打算用於聚合還是隻會有* first *或* single *記錄? – Yuck 2012-03-22 15:11:31

+0

也許你需要一些與'UpdatedStock == true'的項目? – sll 2012-03-22 15:14:25

回答

3

Select()方法在你的情況下返回decimalIEnumerable。這意味着它可以多於一個decimal。如果您只想擁有第一個,或者您知道只有一個您可以使用First()。在這裏你可以閱讀更多關於First

/*IEnumerable<decimal>*/ 
var myMat = OrderdMaterialsCollection.Select(a => a.UpdatedStock); 

result = myMat.First(); 
相關問題