bool b = true;
var a = Convert.ToDecimal(b);
这个你通过decimal d=(decimal)f;转不了吧。
Convert.ToDecimal有18个重载,并不是所有的都能通过decimal d=(decimal)f来强转
解决方案 »
- 关于二进制编码问题。
- 求把Dwg格式的图档生成缩略图,代码实现,VB or C#均可
- TransactionScope事务问题.总是不能回滚
- 请问怎样用OleDb运行Oracle存储过程?
- 网上发短信的功能是用什么技术实现的呀.
- 高分求解FTP上传文件问题
- MDI父窗口显示MDI子窗口的位置能不能搞个背景图片上去啊?应该怎么搞呢?多谢
- 初学c# asp.net 想用一段时间来制作一论坛,不知道该从什么地方下手,请指点!!
- 没找到“Windows Media Encoder Device Control”的引用
- C#串口通信和以太网通讯 实时采集下位机的电压、电流、温度等多路数据
- 求一正则表达式
- 求大湿们帮忙实现在asp.net上读pdf,类似百度文库
而Convert.Toxxxx()是.Net的转换方法,是.Net类库支持的。 也就是说第一种在C#中可以用,与.Net类库没有关系。
第二种可以在.Net下的任何语言中用,比如C#,VB,都适用,但是需要.Net类库的支持。
{
return ((value != null) ? 1 : 0);
}
public static decimal ToDecimal(byte value)
{
return value;
}
public static decimal ToDecimal(char value)
{
return ((char) value).ToDecimal(null);
}
public static decimal ToDecimal(DateTime value)
{
return ((DateTime) value).ToDecimal(null);
}
public static decimal ToDecimal(decimal value)
{
return value;
}
public static decimal ToDecimal(double value)
{
return (decimal) ((double) value);
}
public static decimal ToDecimal(short value)
{
return value;
}
public static decimal ToDecimal(int value)
{
return value;
}
public static decimal ToDecimal(long value)
{
return value;
}
public static decimal ToDecimal(object value)
{
if (value == null)
{
goto Label_0010;
}
return ((IConvertible) value).ToDecimal(null);
Label_0010:
return new decimal(0);
}
public static decimal ToDecimal(sbyte value)
{
return value;
}
public static decimal ToDecimal(float value)
{
return (decimal) ((float) value);
}
public static decimal ToDecimal(string value)
{
if (value != null)
{
goto Label_000A;
}
return new decimal(0);
Label_000A:
return decimal.Parse(value, CultureInfo.CurrentCulture);
}
public static decimal ToDecimal(ushort value)
{
return value;
}
public static decimal ToDecimal(uint value)
{
return value;
}
public static decimal ToDecimal(ulong value)
{
return value;
}
public static decimal ToDecimal(object value, IFormatProvider provider)
{
if (value == null)
{
goto Label_0010;
}
return ((IConvertible) value).ToDecimal(provider);
Label_0010:
return new decimal(0);
}
public static decimal ToDecimal(string value, IFormatProvider provider)
{
if (value != null)
{
goto Label_000A;
}
return new decimal(0);
Label_000A:
return decimal.Parse(value, 0x6f, provider);
}
而强制转换则数据必须就是指定类型的数据,否则报异常简单的说
string a = "12354";
(int)a 异常
Convert.ToInt32(a)正确object a= 12345;
(int)a 正确
Convert.ToInt32(a)正确