oracle中NUMBER(1,0)的字段如何映射到c#中

1。 先在oracle中试了一下,这种类型的数据的取值范围,0~15。意思是说它是一个HEX的一个单元。二进制4bit

2。 然后查了查相关的资料,因为我试了几种类型都不行,

Oracle数据类型与.NET中的对应关系

按这个表格,<=4,所以应当是Int16

事实证明,的确是可行的。

3。 相关的代码

调用代码

cs 复制代码
Int16 myval = ConvertRecordValueWithName<Int16>(item[3], "mynumber_1");                    

库代码

cs 复制代码
        private T ConvertRecordValueWithName<T>(object value,string rename)
        {
            try
            {
                if (Convert.IsDBNull(value)) //这里比较巧妙,如果 为null,则return default value
                {
                    if (typeof(T) == typeof(String))
                    {
                        return (T)(object)string.Empty;
                    }
                    return default(T);
                }
                else
                {
                    return (T)value;
                }
            }
            catch (System.Exception ex)
            {
                MyErrExcu.E1(ex, rename);
                return default(T); 
            }
        }
相关推荐
Song_da_da_10 分钟前
C# 接口(Interface)深度解析:规范、解耦与灵活扩展
开发语言·c#
老纪19 分钟前
Redis分布式锁进第九零篇
数据库·redis·分布式
haven-85220 分钟前
MySQL事务ACID、隔离级别、MVCC、幻读解决
数据库·mysql
政沅同学23 分钟前
基于 C# WPF + HALCON 的工业视觉算法工具框架(开源)
开发语言·c#·wpf
影寂ldy25 分钟前
C#WinForm 窗体基础(入口、部分类、属性、生命周期事件)
开发语言·c#
小高学习java37 分钟前
事务的边界问题,如何判断数据回滚时机。
java·数据库·后端
ceclar1231 小时前
C#异步编程async与await
c#·.net
迷枫7121 小时前
【无标题】
数据库
周杰伦fans2 小时前
续集:工作空间一切换,我的插件菜单就消失?——MenuBar与Ribbon的自动重载方案
后端·ribbon·c#