有人可以告诉我为什么这个C#代码
item.Price = Convert.ToDouble(rdr["Ar"]);
给了我一个错误:
无法将类型'double'隐式转换为'int'。存在显式转换(您是否错过了演员?)
Price项目为double
,rdr
为SqlDataReader
,Ar
为表格的float
类型列...我认为我应该在C#中使用float
,但我认为还有其他代表。
有人可以帮我吗?我试图从数据库中获得一些价格,但它不起作用。如果您有任何建议吗?
答案 0 :(得分:1)
问题是item.Price被定义为整数。
答案 1 :(得分:0)
一个可能的答案是Convert.ToDouble()方法看到你的DB浮动为double,但是期望的参数是一个int(看你不能从double转换为double)。你试过这个吗?:
item.Price = (double)rdr["Ar"];