【发布时间】:2016-05-11 19:27:07
【问题描述】:
我刚开始研究 c# 和 sql,我搜索了但我找不到任何解决我的问题的方法,希望有人能帮助我。
我在动态创建的表单上有一个DataGridView。我使用 LINQ to SQL 从数据库中获取 8 列。但我还创建了另一个列名作为“计算”,它使用其他列数据。我的问题是我需要根据计算列过滤我的表。下面是我的部分代码:
// get datas from database.
var query = _context.Database.SqlQuery<my_Type>("my_stored_procedure");
var binding = new BindingList<my_Type>(query.ToList());
bsMasterPrimary.DataSource = binding;
myDataGridView.DataSource = bsMasterPrimary;
//filter
DataView dv = new DataView();
dv = myDataGridView.DataSource as DataView;//dv always comes null
dv.RowFilter = string.format("Calculation <0");
// dt = (DataTable)((BindingSource)this.dgvAmazonFBAInventory.DataSource).DataSource;
我也试过了,但是报错了:
无法将“System.ComponentModel.BindingList`1[MyProject.MyType]”类型的对象转换为“System.Data.DataTable”类型。 }
【问题讨论】:
标签: c# sql-server datagridview linq-to-sql