我对LINQ完全不熟悉。我只是想做一些简单的事情,但我收到了一个错误:
无效的对象名称'dbo.grupyTowarowe'。
我可以在几分钟之前宣誓这对夫妇,我没有改变任何事情。
这是代码:
var papier = from GrupyTowarowe in dbContext.grupyTowarowes
where GrupyTowarowe.typ == "moneta"
select new
{
GrupyTowarowe.grupa
};
dataGridView1.DataSource = papier;
错误显示在DataGridView上。
答案 0 :(得分:0)
检查'grupyTowarowe'的模式-如果您移至其他数据库,则可能会有所不同。例如,您的开发数据库可能会将其作为模式“ dbo”使用,但是下一个数据库可以在其他模式下创建您的对象。如果是这种情况,请在SSMS中使用ALTER SCHEMA命令。
答案 1 :(得分:-2)
使用"选择"创建匿名对象时,必须指定一个字段以便可以引用它。
select new
{
Grupa = GrupyTowarowe.grupa
}
然而,看起来你想要的只是结果。在这种情况下,您不需要创建一个对象,只需选择返回的对象即可。
var papier = from GrupyTowarowe in dbContext.grupyTowarowes
where GrupyTowarowe.typ == "moneta"
select GrupyTowarowe;
<强>校正:强>
匿名类的原始语法是合法的。十多年来,我一直生活和呼吸这些东西。我从来没有尝试过这种语法。你每天都在学习新东西。
<强>更新强>
这个答案大多是不正确的,特别是因为OP的错误与实体框架有关,而不是Linq。但是我要离开它(随意贬低),因为有一些有用的评论可以解释为什么答案是错误的。