EntityFrameworkCore 操作Oracle 数据库时 string无法存储进Clob字段

发布于 2022-09-11 20:04:56 字数 894 浏览 28 评论 0

OracleException: ORA-01460: 转换请求无法实施或不合理

对应的实体字段是string类型,但是要存入的内容很长,应该也不是太长的原因,输出了一下string.Length最大也就47388。

如果实体对应字段改成OracleClob类型,EntityFrameworkCore又不支持,需要重新写dto转换?

        private OracleClob StringToClob(string value)
        {
            var builder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json");
            var configuration = builder.Build();
            string connectString = configuration["ConnectionStrings:OracleConnection"];
            OracleConnection conn = new OracleConnection(connectString);

            byte[] newvalue = Encoding.Unicode.GetBytes(value);
            var clob = new OracleClob(conn);
            clob.Write(newvalue, 0, newvalue.Length);
            return clob;
        }
        
        

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文