.NETCore使用EF保存图片报错:OracleExceptiol: ORA|01460:转换请求无法实施或不合理|C/S开发框架
作者:csframework|C/S框架网  发布日期:2024/10/20 11:50:12

.NETCore使用EF保存图片报错:OracleExceptiol: ORA|01460:转换请求无法实施或不合理|C/S开发框架

.NETCore使用EF保存图片报错:OracleExceptiol: ORA-01460:转换请求无法实施或不合理

错误原因

由于C# 类型(byte[])存入 Oracle DB 中的 Blob 类型,在数据超出32K长度后会出现ORA-01460错误。

解决方案

使用ModelBuilder定义字段类型:

C# 全选
builder.Entity<dt_Images>().Property(p => p.ImgLarge).HasColumnName(nameof(dt_Images.ImgLarge)).HasColumnType("BLOB");
builder.Entity<dt_Images>().Property(p => p.ImgSmall).HasColumnName(nameof(dt_Images.ImgSmall)).HasColumnType("BLOB");

或者给模型的属性添加特性:

C# 全选
        [Column(TypeName = "BLOB")]
        public System.Byte[] ImgSmall { get; set; }

        [Column(TypeName = "BLOB")]
        public System.Byte[] ImgLarge { get; set; }

C/S框架网|原创精神.创造价值.打造精品


扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务
上一篇 下一篇