entity-framework - 无法创建类型为 'System.Object'的常量值。在这种情况下,仅支持基本类型('such as Int32, String, and Guid')。

标签 entity-framework linq-to-entities

我正在使用MVC和 Entity Framework 。我在模型文件夹中使用以下代码创建了一个类。在下面的两个查询中,我始终收到上述错误消息。我知道在引用非标量变量时存在一个已知问题,但是我不确定如何实现变通方法:

http://msdn.microsoft.com/en-us/library/bb896317.aspx#Y1442

private MovieLibraryDBEntities movieLibraryDBEntitiesContext;

public int getNumberOfEntriesReserved()
{
    return (from m in movieLibraryDBEntitiesContext.Movies
            where m.CheckedOut.Equals(1)
            select m).Count();

    //return movieLibraryDBEntitiesContext.Movies
    //  .Where(e => e.CheckedOut.Equals(1))
    //  .Select (e => e.Title).Count();
}

最佳答案

您不能在linq-to-entities查询中使用m.CheckedOut.Equals(1)。使用m.CheckedOut == 1,但CheckedOut必须是integer

关于entity-framework - 无法创建类型为 'System.Object'的常量值。在这种情况下,仅支持基本类型('such as Int32, String, and Guid')。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5923543/

相关文章:

c# - 奇怪的 LINQ 到实体异常

.Net Entity Framework & POCO ...查询全表问题

c# - 生成的 SQL 的差异

c# - 添加迁移显示错误 EntityFrameworkCore.Design 未安装

c# - 大型 ASP.NET MVC 项目中的模型怎么样

javascript - 用 Breeze 过滤扩展的 table

c# - LINQ to Entities 不支持 LINQ 表达式节点类型 'ArrayIndex'

c# - 使用 Linq 进行多级 where 子句过滤

asp.net-mvc - 如何更新相关表?

c# - 当 ViewModel 中的实体模型发生变化时更新 UI