实体框架:“where 子句中的未知列”

2023-12-30

我正在开发一个应用程序,该应用程序将概述当天在剧院放映的电影。

我得到以下异常

“where 子句”中的未知列“Extent2.Movie_ID”

这是抛出异常的地方(额外的变量,movies2,这只是我为调试所做的事情):

public ActionResult MoviesToday()
{                
    var todaysDate = Convert.ToDateTime(DateTime.Now).Date;
    var showsToday = db.Shows.Where(s => s.StartTime.Year == todaysDate.Year && s.StartTime.Month == todaysDate.Month && s.StartTime.Day == todaysDate.Day);
    var movies = from firstItem in db.Movies
                 join secondItem in showsToday
                      on firstItem equals db.Movies.Where(x => x == secondItem.Movie).FirstOrDefault()
                 select firstItem;            
    movies = movies.Distinct();

    movies = movies.OrderBy(m => m.Name);
    var movies2 = movies.ToList(); // HERE THE EXCEPTION is THROWN
    return View(movies2);
}

这是我的Show模型类:

public class Show
{
        public int ID { get; set; }        
        public DateTime StartTime { get; set; }
        public string BookingLink { get; set; }
        public string StartTimeAsString { get; set; }

        public Movie Movie { get; set; }
        public Theater Theater { get; set; }
    }

你能看出出了什么问题吗?

编辑:完整的异常详细信息+堆栈跟踪:

System.Data.Entity.Core.EntityCommandExecutionException was unhandled by user code
  HResult=-2146232004
  Message=An error occurred while executing the command definition. See the inner exception for details.
  Source=EntityFramework
  StackTrace:
       vid System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior)
       vid System.Data.Entity.Core.Objects.Internal.ObjectQueryExecutionPlan.Execute[TResultType](ObjectContext context, ObjectParameterCollection parameterValues)
       vid System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClass7.<GetResults>b__6()
       vid System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func`1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess)
       vid System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClass7.<GetResults>b__5()
       vid System.Data.Entity.Infrastructure.DefaultExecutionStrategy.Execute[TResult](Func`1 operation)
       vid System.Data.Entity.Core.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption)
       vid System.Data.Entity.Core.Objects.ObjectQuery`1.<System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__0()
       vid System.Data.Entity.Internal.LazyEnumerator`1.MoveNext()
       vid System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
       vid System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
       vid CinemaWeb.Controllers.MoviesController.MoviesToday() i d:\Development\Cinema\CinemaWeb\Controllers\MoviesController.cs:rad 31
       vid lambda_method(Closure , ControllerBase , Object[] )
       vid System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
       vid System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
       vid System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
       vid System.Web.Mvc.Async.AsyncControllerActionInvoker.ActionInvocation.InvokeSynchronousActionMethod()
       vid System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState)
       vid System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult)
       vid System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End()
       vid System.Web.Mvc.Async.AsyncResultWrapper.End[TResult](IAsyncResult asyncResult, Object tag)
       vid System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)
       vid System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d()
       vid System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f()
  InnerException: MySql.Data.MySqlClient.MySqlException
       HResult=-2147467259
       Message=Unknown column 'Extent2.Movie_ID' in 'where clause'
       Source=MySql.Data
       ErrorCode=-2147467259
       Number=1054
       StackTrace:
            vid MySql.Data.MySqlClient.MySqlStream.ReadPacket()
            vid MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId)
            vid MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId, Int32& affectedRows, Int64& insertedId)
            vid MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force)
            vid MySql.Data.MySqlClient.MySqlDataReader.NextResult()
            vid MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
            vid MySql.Data.Entity.EFMySqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
            vid System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
            vid System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.<Reader>b__c(DbCommand t, DbCommandInterceptionContext`1 c)
            vid System.Data.Entity.Infrastructure.Interception.InternalDispatcher`1.Dispatch[TTarget,TInterceptionContext,TResult](TTarget target, Func`3 operation, TInterceptionContext interceptionContext, Action`3 executing, Action`3 executed)
            vid System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.Reader(DbCommand command, DbCommandInterceptionContext interceptionContext)
            vid System.Data.Entity.Internal.InterceptableDbCommand.ExecuteDbDataReader(CommandBehavior behavior)
            vid System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
            vid System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior)
       InnerException: 

编辑 3:我认为我设置 Show 和 Movie 之间映射的方式显然有问题,但我找到的示例建议我以这种方式实现它。为了清楚起见,我希望一场演出有一部电影和一个剧院。


我进行了搜索,发现了这个:实体框架5复杂类型和字段列表中的未知列错误 https://stackoverflow.com/questions/12592833/entity-framework-5-complex-type-and-unknown-column-in-field-list-error

copy: 默认情况下,EF 期望复杂类型属性的列采用 {complextypename_propertyname} 形式。如果您手动创建表并以不同方式命名列,则会出现不匹配。您可以尝试相应地重命名这些列(即将 street 重命名为 address_street)并尝试是否有效。或者,您应该能够向复杂类型的属性添加一个属性,以告诉 EF 不应使用约定,而应使用您指定的名称(例如,街道属性的 [Column("street")])。

另外,我建议您在 where 子句中使用像“Id”这样的属性,我在比较 2 个对象时遇到了很多问题,就像您所做的那样。

前任: var movie = 来自 db.Movies 中的firstItem 加入今日秀中的第二项 第一个项目等于 db.Movies.FirstOrDefault(x => x.ID == secondaryItem.Movie.ID) 选择第一项;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实体框架:“where 子句中的未知列” 的相关文章

  • 为什么 GCC 不允许我创建“内联静态 std::stringstream”?

    我将直接前往 MCVE include
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或
  • IsReusable 属性中的上下文切换

    是否可重用属性 下面是我的理解IsReusable财产 如果处理程序返回静态内容 将值设置为 true 是安全的 但如果线程返回动态内容 为了使其线程安全 IsReusable应设置为 false 在这种情况下 可能会发生上下文切换 这可能
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • 为什么 C# 2.0 之后没有 ISO 或 ECMA 标准化?

    我已经开始学习 C 并正在寻找标准规范 但发现大于 2 0 的 C 版本并未由 ISO 或 ECMA 标准化 或者是我从 Wikipedia 收集到的 这有什么原因吗 因为编写 审查 验证 发布 处理反馈 修订 重新发布等复杂的规范文档需要
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • C# 动态/expando 对象的深度/嵌套/递归合并

    我需要在 C 中 合并 2 个动态对象 我在 stackexchange 上找到的所有内容仅涵盖非递归合并 但我正在寻找能够进行递归或深度合并的东西 非常类似于jQuery 的 extend obj1 obj2 http api jquer
  • 为什么使用小于 32 位的整数?

    我总是喜欢使用最小尺寸的变量 这样效果就很好 但是如果我使用短字节整数而不是整数 并且内存是 32 位字可寻址 这真的会给我带来好处吗 编译器是否会做一些事情来增强内存使用 对于局部变量 它可能没有多大意义 但是在具有数千甚至数百万项的结构
  • 如何在 Linq to SQL 中使用distinct 和 group by

    我正在尝试将以下 sql 转换为 Linq 2 SQL select groupId count distinct userId from processroundissueinstance group by groupId 这是我的代码
  • 在 WPF 中使用 ReactiveUI 提供长时间运行命令反馈的正确方法

    我有一个 C WPF NET 4 5 应用程序 用户将用它来打开某些文件 然后 应用程序将经历很多动作 读取文件 通过许多插件和解析器传递它 这些文件可能相当大 gt 100MB 因此这可能需要一段时间 我想让用户了解 UI 中发生的情况
  • C# 中的 IPC 机制 - 用法和最佳实践

    不久前我在 Win32 代码中使用了 IPC 临界区 事件和信号量 NET环境下场景如何 是否有任何教程解释所有可用选项以及何时使用以及为什么 微软最近在IPC方面的东西是Windows 通信基础 http en wikipedia org
  • 当文件流没有新数据时如何防止fgets阻塞

    我有一个popen 执行的函数tail f sometextfile 只要文件流中有数据显然我就可以通过fgets 现在 如果没有新数据来自尾部 fgets 挂起 我试过ferror and feof 无济于事 我怎样才能确定fgets 当
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern
  • 在OpenGL中,我可以在坐标(5, 5)处精确地绘制一个像素吗?

    我所说的 5 5 正是指第五行第五列 我发现使用屏幕坐标来绘制东西非常困难 OpenGL 中的所有坐标都是相对的 通常范围从 1 0 到 1 0 为什么阻止程序员使用屏幕坐标 窗口坐标如此严重 最简单的方法可能是通过以下方式设置投影以匹配渲
  • MySQL Connector C/C API - 使用特殊字符进行查询

    我是一个 C 程序 我有一个接受域名参数的函数 void db domains query char name 使用 mysql query 我测试数据库中是否存在域名 如果不是这种情况 我插入新域名 char query 400 spri
  • 现代编译器是否优化乘以 1 和 -1

    如果我写 template
  • 使用 WGL 创建现代 OpenGL 上下文?

    我正在尝试使用 Windows 函数创建 OpenGL 上下文 现代版本 基本上代码就是 创建窗口类 注册班级 创建一个窗口 choose PIXELFORMATDESCRIPTOR并设置它 创建旧版 OpenGL 上下文 使上下文成为当前

随机推荐

  • 根据晚于特定日期的多列选择行

    我有以下数据框 import pandas as pd import numpy as np np random seed 0 create an array of 5 dates starting at 2015 02 24 one pe
  • ruby 中的一行可以动态初始化多个变量吗? [复制]

    这个问题在这里已经有答案了 我才写了几个星期的代码 这是我的第一个问题 所以请耐心等待 在 ruby 中 我知道您可以在一行上初始化多个变量 如下所示 a b 1 2 但是 我想知道是否可以在循环中初始化多个变量并生成它们的名称 这是一些伪
  • SVN:XML 格式错误错误

    我正在尝试从远程存储库签出分支 签出多个文件 然后签出失败并出现以下错误 svn E175009 XML 响应包含无效的 XML svn E130003 格式错误的 XML 格式不正确 令牌无效 是什么导致了这个问题 有没有办法修复远程存储
  • 如何查看公共数据集?

    我正在尝试按照 GitHub 网站上的说明查看 GitHub 公共数据集 那里的说明说 添加项目名称 githubarchive 但是在 BigQuery 网站上时 我看不到添加项目的方法 我确信我只是没有正确注册或类似的事情 但我不知道如
  • 检查是否设置了对象属性 - SimpleXML

    我有一些 XML 正在使用 PHP 的 SimpleXML 类 并且 XML 中有一些元素 例如
  • 将自定义视图添加到导航项后,自定义视图始终返回 nil

    下面的代码添加了一个自定义视图navigationItem成功了 但是当尝试访问时customView它总是会回来nil override func viewDidLoad super viewDidLoad let customView
  • os.path.join 和 os.sep 连接的使用差异

    我正在尝试弄清楚使用以下方法是否更好 os path join str1 str2 or str1 os sep str2 分析与timeit我发现 正如预期的那样 串联速度更快 timeit playground os sep Text
  • 从 XPS 文档中提取单个页面

    我需要拆分现有的 XPS 文档并创建一个新的 XPS 文档 其中只有原始文档的一页 我尝试复制文档并从复制的文档中删除页面 但这非常慢 有没有更有效的方法来做到这一点 请使用 C Thanks 解决 public void Split st
  • 中断 D3.js 中的滚动转换

    我正在使用scrollama javascript 库编写一篇 scrolllytelling 文章 其中涉及当用户滚动时将D3 图形移入和移出视图 它大部分工作正常 但如果我滚动太快 图表就会堆积在一起 这是一个jsfiddle http
  • 编译关于缺少 @required 协议方法未出现的警告

    今天早上我正在修改 XCode 4 5 2 想要制作一个表格视图 我自然地添加了UITableViewDataSource and UITableViewDelegate我的视图控制器定义上的协议 import
  • 通过 Linux 终端运行 Java GUI 应用程序

    我在 Ubuntu 上尝试通过终端运行 Java GUI 应用程序 当我尝试运行它时 出现 HeadlessException 下面是堆栈跟踪 Exception in thread AWT EventQueue 0 java awt He
  • 清除本地存储但免除某些值。

    有没有办法清除 window localStorage 即window localStorage clear 但豁免某些键 值对 不 但您可以将所需的值保存在变量中 然后清除localStorage然后再次将存储在变量中的项目添加到其中 E
  • 查找总和等于“k”的子数组的数量

    我们将得到一个整数数组和一个值k 我们需要找到总和等于的子数组的总数k 我在网上 Leetcode 发现了一些有趣的代码 如下 public class Solution public int subarraySum int nums in
  • Scala Play 框架 Web 应用程序托管流程

    我正在使用 scala 和 play 框架从事一个网络项目 我担心应用程序部署部分 我需要在 Glass Fish 服务器中托管我的应用程序 那么有人有这方面的经验吗 我有托管 javaEE 应用程序将 war 文件上传到服务器的经验 但我
  • PHP 警告:unpack():类型 n:输入不足 - 日志条目

    所以我找到了这个错误日志 PHP Warning unpack Type n not enough input need 2 have 0 in file line 所述文件和行包含以下代码 answerHeader unpack ntyp
  • R:所有排列的前 N ​​个

    我正在寻找一个函数 可以列出所有n 给定输入向量的排列 通常只是序列1 n 也可以只列出所有 n 中的前 N 排列 第一个要求得到满足 例如permn 从包装中combinat permutations 从包装中e1071 or permu
  • ng-controller 指令和路由中的控制器有什么区别?

    我通过了AngularJS 网站上的教程 http docs angularjs org tutorial我注意到在step 7 http docs angularjs org tutorial step 07 它们改变了将控制器引入应用程
  • 查找 Git 存储库的大小

    查找 Git 存储库大小的简单方法是什么 我的意思不是du h在我的存储库的根目录中 我有很多被忽略的文件 因此该大小与我的存储库总大小不同 我本质上想知道克隆我的存储库时会传输多少数据 请注意 自从git 1 8 3 2013 年 4 月
  • ACR122u卡仿真模式发送PN532命令

    我刚刚读过this https stackoverflow com a 23197444 1852589回答有关如何将我的 ACR122U 置于卡模拟模式的问题 我确实明白其目的 但您需要如何将命令发送到 ACR122u 据我所知 FF00
  • 实体框架:“where 子句中的未知列”

    我正在开发一个应用程序 该应用程序将概述当天在剧院放映的电影 我得到以下异常 where 子句 中的未知列 Extent2 Movie ID 这是抛出异常的地方 额外的变量 movies2 这只是我为调试所做的事情 public Actio