2013-02-25 108 views
0

我使用數據庫中的數據填充了對象datatable,我需要檢查它們中的一些是否爲NULL並將其設置爲空字符串
問題是某些數據在數據庫中是NULL,但在DataTable中它們是「0」
我試圖設置爲"",String.EmptyString等沒有任何工作。
如何將DataTable中的空數據設​​置爲空字符串

foreach (DataRow row in ds.Tables[0].Rows) 
{ 
    foreach (DataColumn c in ds.Tables[0].Columns) 
    { 
     object value = row[c]; 

     if (value == DBNull.Value) 
     { 
      try 
      { 
       row[c] = ""; 
+1

「問題是某些數據在數據庫中爲NULL,但在DataTable中爲」0「。我不相信你。 :)你能寫一個示例程序來演示這個嗎?我從來沒有見過這種行爲。 – aquinas 2013-02-25 16:38:03

+0

你需要先理解數據庫模式,如果它允許null,然後設置爲string.empty將工作。如果不是那麼你需要將空值設置爲DBNUll和「」是不一樣的設置爲空 – MethodMan 2013-02-25 16:41:36

+0

相信我: )int列中爲空,日期列爲null。我在Row.ItemArray [0] = 0,'Row.ItemArray [0] = {1/1/1900 12:00:00 AM}'DataTable''。 – 1110 2013-02-25 16:56:39

回答

1

嘗試更改爲;

foreach (DataRow row in ds.Tables[0].Rows) 
{ 
    foreach (DataColumn c in ds.Tables[0].Columns) 
    { 
     if (row.IsNull(c)) 
     { 
      try 
      { 
       row[c] = string.Empty; 
相關問題