2

Unable to cast object of type 'System.Int64' to type 'System.Int32'上车:

item.ItemCount = reader.GetInt32(reader.GetOrdinal("amount"));

我试过了:

item.ItemCount = reader.GetInt64(reader.GetOrdinal("amount"));

但我得到了:

Error   CS0266  
Cannot implicitly convert type 'long' to 'int'. 
An explicit conversion exists (are you missing a cast?)

该领域是bigint,这是我第一次使用 .Net。

4

1 回答 1

2

你必须使用GetInt64

item.ItemCount = reader.GetInt64(reader.GetOrdinal("amount"));

SQLbigint等价于 .NET longGetInt64返回一个long,而GetInt32返回一个int.

有关更多详细信息,请参阅此文档

于 2019-10-27T00:52:38.060 回答