无法创建“System.Object”类型的常量值。此上下文仅支持基元类型或枚举类型
2024-09-02 11:47:32
Entity FreamWork 无法创建“System.Object”类型的常量值。此上下文仅支持基元类型或枚举类型错误解决:
最近在开发中把我原来抄的架构里面的主键由固定的Guid改成了可以泛型指定的类型,结果,发现执行EF在查询的时候,不能支持equal,只能用==,理由很简单,因为equal是object的方法,虽然所有的类都是object的子类,但是ef不支持复杂类型的直接检索,只能用简单类型,比如常用的string,int,guid,这些,都可以做==,也可以用来检索。但是比如Person对象,虽然可以做==,但不能用于EF的检索。
最终解决方案,把firstOrDefault方法改成用find方法,EF提供的,就可以了。
最新文章
- leetcode-【简单题】Happy Number
- python 多态
- Levenshtein distance
- zoj 1586
- SharedPreferences数据、openFileOutput文件、SQLite数据库文件存储位置
- CentOS7 yum lamp 虚拟主机配置 lamp各组件简单影响性能的参数调整--for 一定的环境需求
- Oracle数据库报错:索引中丢失 IN 或 OUT 参数
- Springmvc ModelAndView踩过的坑之HttpServletResponse response
- ssm整合(基于xml配置方式)
- gradle配置统一管理
- 【java并发核心八】Fork-Join分治编程
- python3 图片文字识别
- java之webservice客户端
- angularjs探秘<;四>; 双向数据绑定
- 深入理解java虚拟机---java内存区域与内存溢出异常---2堆栈溢出
- 端口安全检查shell脚本
- (转)一次棘手的rootvg更换硬盘处理过程
- javascript基础-js继承
- [读书笔记]iOS 7 UI设计 对比度
- Java 创建线程的两种方法