LINQ语句返回“无效的对象名称”错误

时间:2016-07-20 21:58:44

标签: c# .net linq

我对LINQ完全不熟悉。我只是想做一些简单的事情,但我收到了一个错误:

  

无效的对象名称'dbo.grupyTowarowe'。

我可以在几分钟之前宣誓这对夫妇,我没有改变任何事情。

这是代码:

var papier = from GrupyTowarowe in dbContext.grupyTowarowes
             where GrupyTowarowe.typ == "moneta"
             select new
             {
                 GrupyTowarowe.grupa
             };

dataGridView1.DataSource = papier;

错误显示在DataGridView上。

2 个答案:

答案 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。但是我要离开它(随意贬低),因为有一些有用的评论可以解释为什么答案是错误的。