[英]Negative values not reflecting in the output
我有一個數據庫列,其取值1
, 0
, -1
。 我正在使用uint
和GetUInt16
如下面的類和代碼片段所示。 負值以某種方式無法體現。 我應該使用哪種數據類型查看類和rdr
的負值?
public class Postcommit
{
public string software_image_build { get; set; }
public uint TestStatus { get; set; }
}
程式碼片段:
PCS[i++].TestStatus = rdr.GetUInt16(1);
您正在使用uint
。 u
表示unsigned
表示它不能為負(“符號”是指“負符號”)。 您應該使用普通的int
。 同樣,您應該使用rdr.GetInt16(1)
來獲取值。
public class Postcommit
{
public string software_image_build { get; set; }
public int TestStatus { get; set; }
}
...
PCS[i++].TestStatus = rdr.GetInt16(1);
因此,從數據庫到代碼的每一步,每個單一類型都必須設置為整數, 而不是無符號整數。
UInt16
范圍是0到65,535。 它不包括負值。 您應該嘗試常規的Int16
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.