簡體   English   中英

在數據表中使用特定的列

[英]Using a specific column in a Datatable

我有一個存儲過程,可使用該存儲過程使用數據來填充數據表,如下所示:

foreach (DataRow row in dt.Rows)
{
    html.Append("<tr>");
     foreach (DataColumn column in dt.Columns)
     {
        html.Append("<td>");
        html.Append("<a target='_blank' href= " + "'" + row[dt.Columns["subCategoryURL"]] + "'" + " >");
        html.Append(row[column.ColumnName]);
        html.Append("</a>");
        html.Append("</td>")
     }
    html.Append("</tr>");
}

我目前有SP返回2列信息:subCategoryName,subCategoryDe​​scription。 我想添加一個第三列subCategoryURL,它將用作鏈接的標簽,如下所示:

<td>
   <a target="_blank" href="#">Dealer Support</a>
</td>
<td>
   <a target="_blank" href="#">Support information for dealer management</a>
</td>

我將如何專門針對每一列來構建表格? 我嘗試使用html.Append(row[dt.Columns["subCategoryURL"]]); 但是它沒有返回預期的結果。 接下來我該怎么辦?

要從與特定列(columnName)對應的DataRow(數據行)中獲取特定類型(T)的項目,可以使用以下命令。

dataRow.Field<T>(columnName)

所以,

string url = row.Field<string>(subCategoryURL)

可能有效。

請記住,T必須與DataRow的指定列中存儲的數據具有相同的類型。 如果subCatergoryURL指向雙打行,則上面將拋出InvalidCastException。

這里

子類別URL最終出現在表格中...我如何將其他2個目標定位到循環中

同樣的方法,即:

foreach (DataRow row in dt.Rows)
{
 html.Append("<tr>");
 html.Append("<td>");
 html.Append("<a target='_blank' href= " + "'" + row["subCategoryURL"].ToString() + "'" + " >");
 html.Append(row["subCategoryName"].ToString());
 html.Append("</a>");
 html.Append("</td>");

 html.Append("<td>");
 html.Append(row["subCategoryDescription"].ToString());
 html.Append("</td>");

 html.Append("</tr>");
}

row [“ subCategoryName ”]將為您獲取當前行的“ subCategoryName ”列的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM