Convert.ToDouble(rdr["value"])
当SQL Server中显示的值为75875563.7000000000000000000000时,引发“转换溢出”错误。
堆栈追踪:
at System.Data.SqlClient.SqlBuffer.get_Decimal()
at System.Data.SqlClient.SqlBuffer.get_Value()
at System.Data.SqlClient.SqlDataReader.GetValueFromSqlBufferInternal(SqlBuffer data, _SqlMetaData metaData)
at System.Data.SqlClient.SqlDataReader.GetValueInternal(Int32 i)
at System.Data.SqlClient.SqlDataReader.GetValue(Int32 i)
at System.Data.SqlClient.SqlDataReader.get_Item(String name)
at DataAPI.Models.Title.TitleDB.getTitlePerformance(Nullable`1 StartDate, Nullable`1 EndDate) in c:\00 BI Source\BIPortal\DataAPI\DataAPI\Models\Title\TitleDB.cs:line 44
有人能告诉我为什么会这样吗?
答案 0 :(得分:2)
这是关于十进制容量。你可以在sql server端使用decimal(16,4)(或者你需要一些精度)吗?十进制(16,4)表示16个字符,后面有4个数字,