ASP.NET MVC基于方法的LINQ查询SQL数据库返回IEnumerable对象报错
问题修复方案
核心错误原因
你在CSVMetaDbContext中定义的DbSet属性名为CSVMetas(末尾带s),但在控制器中访问时使用的名称是CSVMeta(缺失末尾的s),属性名不匹配直接触发了CS1061编译错误。
修复步骤
- 修正控制器中的属性访问拼写,同时建议调用
ToList()立即执行查询转换为IEnumerable对象,避免延迟加载带来的潜在问题,修改后的代码如下:
public IActionResult Database() { IEnumerable<CSVMeta> objList = _db.CSVMetas.ToList(); return View(objList); }
- 检查控制器代码文件顶部是否引入了DbContext所在的命名空间:
using WebApplicationTemp.Data;
- 若修改后仍存在异常,清理解决方案后重新编译即可消除缓存类的编译错误。
内容的提问来源于stack exchange,提问作者Justin
相关产品推荐
相关产品推荐

