2012-01-16 19 views
1

このLINQ選択で価格変換を行うにはどうすればよいですか?
xmlファイルから読み込んだ価格の1.5倍の価格を選択したいとします。この乗算はどこで行うのですか?Linq selectブロック内の計算方法は?

select new 
     { 
      Price = double.Parse(d.Element(price).Value).ToString(), 
      ProductName = d.Element(productName).Value 
     } 

私はこのような何かを期待していたが、明らかに、それは誤りです:

Price = double.Parse(d.Element(price).Value * 1.5).ToString(), 

答えて

2

あなたは

Price = (double.Parse(d.Element(price).Value) * 1.5).ToString() 
3

を行う必要があり、私はToString()はタイプミスだったので、

推測
select new 
{ 
    Price = double.Parse(d.Element(price).Value) * 1.5, 
    ProductName = d.Element(productName).Value 
} 

n実際にはPriceの倍数を含むようにデータモデルを変更することをお勧めします(または、double型がお金のために十分ではないため、decimal)。