我正在创建一个会计/产品管理程序,代码有问题,应该在数据网格视图中过滤我的数据库内容:
private void List(object sender, EventArgs e)
{
ObjectQuery<TblProduct> filteredProducts = new ObjectQuery<TblProduct>(
"SELECT VALUE P FROM TblProduct AS P WHERE P.ProductType = " + comboBox1.SelectedValue, salon);
dataGridView1.DataSource = filteredProducts;
}而且我再次使用了几乎相同的代码,它被假定做几乎相同的事情-过滤和排序我的产品,并为每个产品创建按钮:
private void AddProductsToTabbedPanel()
{
foreach (TabPage tp in tabControl1.TabPages)
{
ObjectQuery<TblProduct> filProd = new ObjectQuery<TblProduct>("SELECTED VALUE P FROM TblProduct AS P", salon);
foreach (TblProduct tprod in filProd)
{
Button b = new Button();
b.Text = tprod.Description;
tp.Controls.Add(b);
}
}
}在这两种情况下,我都得到了一个错误,告诉我EtitySqlException是错误的,而且语法很糟糕。
我从一个教程中提取了这些代码,所以我不明白为什么它不起作用。
发布于 2014-08-13 16:42:29
关于第二个例子
ObjectQuery<TblProduct> filProd = new ObjectQuery<TblProduct>("SELECTED VALUE P FROM TblProduct AS P", salon);被选中是错误的。应选择
第一个似乎没问题。尝试更改并检查它是否运行。
在本教程中,查询中的表是"TblProducts“而不是"TblProduct”。
https://stackoverflow.com/questions/25291435
复制相似问题