2012-03-22 6 views
-1

助けが必要です。新しいプログラマーであり、IEnumerableを10進数にする必要があります。アップデートストックはSelect()方法は、あなたのケースでdecimalIEnumerableを返し'System.Collections.Generic.IEnumerable <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() –

+0

@ lazyberezovsky OPは集計を望んでいないかもしれませんが、問題を引き起こします。 'OrderdMaterialsCollection'は集約で使用されることを意図していますか、実際には* first *または* single *レコードがありますか? – Yuck

+0

おそらく、「UpdatedStock == true」の項目が必要でしょうか? – sll

答えて

3

OrderdMaterialsテーブルのフィールドです。つまり、それは1つ以上のdecimalになる可能性があります。最初のものだけを持っていたいと思っているのであれば、それが1つしかないことを知っているなら、First()を使うことができます。ここではFirstの詳細を読むことができます。

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

result = myMat.First(); 
関連する問題