Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么这个IQueryable问题会给我一个错误?_C#_Asp.net_Asp.net Mvc_Iqueryable - Fatal编程技术网

C# 为什么这个IQueryable问题会给我一个错误?

C# 为什么这个IQueryable问题会给我一个错误?,c#,asp.net,asp.net-mvc,iqueryable,C#,Asp.net,Asp.net Mvc,Iqueryable,我不明白为什么下面的代码不起作用。它导致生成错误: IQueryable'不包含“FirstOrDefault”和最佳扩展方法重载“Queryable.FirstOrDefault(IQueryable)”的定义。 使用系统; 使用System.Collections.Generic; 使用System.ComponentModel.DataAnnotations; 使用System.Data.Entity; 使用System.Linq; 使用System.Web; 使用System.Web.M

我不明白为什么下面的代码不起作用。它导致生成错误:

IQueryable'不包含“FirstOrDefault”和最佳扩展方法重载“Queryable.FirstOrDefault(IQueryable)”的定义。

使用系统;
使用System.Collections.Generic;
使用System.ComponentModel.DataAnnotations;
使用System.Data.Entity;
使用System.Linq;
使用System.Web;
使用System.Web.Mvc;
使用ruciyansweets.Models;
[HttpGet]
public ActionResult AdminAddorEdit(int id=0)
{
如果(id==0)
返回视图(新模型());
其他的
{
使用(Entities db=新实体())
{
返回视图(db.TableName.Where(x=>x.FieldID==id).FirstOrDefault());
}
}
}
  • 定义
    TSource FirstOrDefault(此IQueryable源代码)
    System.Linq
    命名空间的一部分。检查您的项目是否引用了
    System.Core
    ,并且您已经使用了
    System.Linq
    使用System.Data.Entity
  • 确保安装了
    EntityFramework
    软件包

Rayman Bacchus,为了帮助您,您需要添加一条错误文本message@Rayman巴克斯:你能把
TableName
的定义添加到帖子里吗?它应该像
公共虚拟DbSet TableName{get;set;}
我的控制器中已经有
使用System.Linq
使用System.Data.Entity
。实际上,它们在控制器和模型中。@Rayman Bacchus:出于某种原因,编译器找不到
FirstOrDefault()
定义。这可能是因为:1)装配参考错误;2) LINQ表达式中的类型不匹配。执行以下操作:将插入符号置于扩展方法的
位置,然后按F12。查看文件的第一行,其中定义了
where()
(同一程序集中定义的
FirstOrDefault()
),以了解哪个程序集实现了
where
扩展方法。它应该是
System.Core
。看看是不是真的?弄明白了。我使用的模型显然不正确。但我无法解释为什么。我根据数据库创建了自己的模型,但它不起作用,但当我使用自动创建的模型时,它起作用了。谢谢你的这个想法——它为我指明了使用错误模型的方向。我只是不明白为什么一个模型有效,另一个没有,它们基本上都是复制品。但这将是另一天的调查。@Rayman Bacchus:这就是为什么在这种情况下建议创建一个。很高兴你解决了这个问题。