私のデータテーブルをフィルタリングしたいですか?私はdatatable.Select()
を使用してフィルターをかけますが、条件の1つであるUnitPrice
は常にデータと一致しません。この列UnitPrice
は数値であり、小数点は0.1750です。どのようにdatatable.Select()フィルター数値
コードを変更するにはどうすればよいですか?ありがとう。
私が試してみてください。
var result =
dt_Excel.Select(@" ID = '" + detailrow["Details_MasterID"].ToString() + "'"
+ " And PatternCode = '" + detailrow["PatternCode"].ToString() + "'"
+ " And StyleID = '" + detailrow["StyleID"].ToString() + "'"
+ " And BrandID = '" + detailrow["BrandID"].ToString() + "'"
+ " And SeasonID = '" + detailrow["SeasonID"].ToString() + "'"
+ " And UnitPrice = '" +detailrow["UnitPrice"].ToString() + "'"
もう一度試してください。
var result =
dt_Excel.Select(@" ID = '" + detailrow["Details_MasterID"].ToString() + "'"
+ " And PatternCode = '" + detailrow["PatternCode"].ToString() + "'"
+ " And StyleID = '" + detailrow["StyleID"].ToString() + "'"
+ " And BrandID = '" + detailrow["BrandID"].ToString() + "'"
+ " And SeasonID = '" + detailrow["SeasonID"].ToString() + "'"
+ " And UnitPrice = '" +Convert.ToDecimal(detailrow["UnitPrice"]) +"'"
@mjwills:それは、SQLではなく、インメモリコレクション 'DataTable'を照会する方法。注入ができません;-) –
'Linq-To-DataTable'を使用して列を正しい型f.eにキャストしてください。 'DataRowExtension.Field'を使用します。 –
'' detailrow ["PatternCode"]。ToString() 'に@TimSchmelterという一重引用符があるとどうなりますか?それは働くだろうか?そうでない場合は、それを修正するために何ができるでしょうか(おそらくhttps://stackoverflow.com/a/18535163/34092)? _Apologiesもしそれがばかな質問です._ – mjwills