entity-framework - 如何防止实体框架在数据库优先方法中将空字符串转换为 null
问题描述
我必须在 oracle db 的不可为空的 varchar 字段中插入空字符串。我要保存的对象的属性设置为空字符串,但是当我调用SaveChanges时出现错误,因为 EF 将我的空字符串转换为 null。我知道,在代码优先方法中,您可以使用ConvertEmptyStringToNull=false :有没有办法通过数据库优先方法实现相同的行为?
解决方案
看来,在 Oracle 中(至少现在),空字符串被视为 null。因此,无法在 varchar 字段中保存空字符串。
注意:Oracle 数据库当前将长度为零的字符值视为空值。但是,在未来的版本中,这可能不会继续存在,Oracle 建议您不要将空字符串视为与 null 相同。
推荐阅读
- multithreading - 关于线程死锁 CPU 窗口的想法?
- java - Hibernate 如何将实体保存到数据库
- python - 导航到类别页面时出现 Django NoReverseMatch 错误
- python - django 中跨多个应用程序的一个对象
- c++ - 创建一个随机字符串只会导致重复的字符串 c++
- python - 在 tkinter、Python 中使用 filedialog.askdirectory() 存储目录地址
- python - Selenium + Headless Chrome -- Cookie 不保存
- rtsp - 如何实现RTSP web-assembly模块
- java - 当尝试通过将 4 年添加到已建立的日期来创建新日期时,两个日期都会更改(GregorianCalendar)
- ios - 无法在运行 iOS 14.3 的 iPhone 上部署 iOS 应用程序