mysql tinyint 对应c#类型_如何在C#中从MySQL中检索tinyint的数据类型?

问题是由于强制转换和显式运算符:

(byte)objectExpression与(byte)sbyteExpression不同.

第一个是[direct]强制转换失败,因为真实对象类型是sbyte而不是byte.后者将执行转换,恰好使用带有语法的显式运算符(“显式转换”),遗憾的是,仍然看起来像上面的[direct]强制转换.这是一个失败sans-database的例子:

var obj = (object)(sbyte)0;

var i1 = (int)(sbyte)obj; // okay: object (cast)-> sbyte (conversion)-> int

var i2 = (int)obj; // fail: sbyte (cast)-> int (but sbyte is not int!)

要么使用对实际对象类型有效的(sbyte)objectExpression强制转换,要么使用Convert.ToInt32(objectExpression),它接受一个对象并做一些魔法将其转换为int. (使用Convert.ToByte可能会在溢出时抛出异常.)

快乐的编码!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值