如果我有查询
var query = from c in ds.Prices
select c;
dataGridControl1.AutoCreateColumns = true;
dataGridControl1.ItemsSource = query;
datagrid显示表中的所有数据(`ds = new DataSet())。但是当我添加条件时
var query = from c in ds.Prices
where c.idsticker.Equals("GOOG")
select c;
dataGridControl1.AutoCreateColumns = true;
dataGridControl1.ItemsSource = query;
datagrid为空。但是价值GOOG存在于表(sql server中的idsticker varchar(10)
)中。当我比较int值(例如条件是where c.prices > 660
)时,它正常工作。
有什么问题?
答案 0 :(得分:2)
我能想到的就是对它应用Trim(),并可能使用ToUpper()来查看其中一个或两个是否有任何区别。
var query = from c in ds.Prices
where c.idsticker.Trim().ToUpper().Equals("GOOG")
select c;
dataGridControl1.AutoCreateColumns = true;
dataGridControl1.ItemsSource = query;
除此之外,尝试使用SQL对数据库执行相同的查询。
select * from prices where idsticker = 'GOOG'