讓我首先說明我對C#非常陌生。我正在使用DataTable來顯示來自SQL數據庫的數據。如果數據庫單元格中的數據有數據,但是如果它爲空,表格的該部分不顯示,我試圖使用if else動態顯示錶格中的一行。使用C語言中的數據表使用if#
爲什麼總是打印代碼的其他部分,而不是如果單元格爲空?
這裏是我的代碼段:
C#
DataTable dt = new DataTable();
PullDataConn.Open();
dt.Load(cmd.ExecuteReader());
PullDataConn.Close();
int rowCount = dt.Rows.Count;
string html = "";
for (int i = 0; i < rowCount; i++)
{
html += "<div class='divContainer'>" +
"<table class='resultsTable1'>" +
"<tr><td colspan='2' class='tdCoName'>";
html += dt.Rows[i].ItemArray.GetValue(0);
html += "</td></tr>" +
"<tr><td class='contactCat'>HotLine</td>" +
"<td class='tdHeadingPadding'>";
html += dt.Rows[i].ItemArray.GetValue(1);
html += "</td></tr>" +
"<tr><td class='contactCat'>e-Mail</td>" +
"<td class='tdHeadingPadding'>";
html += dt.Rows[i].ItemArray.GetValue(2);
html += "</td></tr>";
if (dt.Rows[i].ItemArray.GetValue(3) == null)
{
html += "<tr><td colspan='2' style='height:10px;'></td></tr></table></div>";
}
else
{
html += "<tr><td class='contactCat'>Other</td><td class='tdHeadingPadding'>";
html += dt.Rows[i].ItemArray.GetValue(3);
html += "</td></tr><tr><td colspan='2' style='height:10px;'></td></tr></table></div>";
}
}
ResultsDiv.InnerHtml += html;
你可以調試,並確定什麼'dt.Rows [i] .ItemArray.GetValue(3)'包含?我懷疑你所認爲的'null'實際上是一些其他的空值:' ','''''或類似的東西。 – ethorn10
@ ethon10該值完全沒有。我怎麼能做一個完全空白字段的IF ELSE?對於測試我不能只在表格的單元格中鍵入NULL?如果是這樣,當我這樣做時,3的值是{}。 –