1

テーブルがあり、「水」というフィールドがあり、このフィールドのデータ型sql server 2008は float です。

私のコードでは、float.

 public float? Water { get; set; }

これが私が得たエラーメッセージです。

{"Specified cast is not valid."}
{"Error parsing column 2 (Water=15.87 - Double)"}

タイプを double に変更すると、すべてが機能します。

 public double? Water { get; set; }

データベースに戻りました。水フィールドの値はすべて 0 ~ 100 です。いくつかのヌルがあります。

float の代わりに double を使用しなければならない理由を教えてください。

4

1 に答える 1

5

これは とは関係ありませんDapperSqlDbType変換サイトを確認するfloatと、SQL Server の a が in でdoubleあることがわかります。.NET

http://msdn.microsoft.com/en-us/library/system.data.sqldbtype.aspx#Mtps_DropDownFilterText

于 2012-08-14T09:39:11.777 に答える