之前的專案 有些DataTable欄位寫入excel cell需要明確轉型,比如數字要轉Decimal ,但如果遇到DBNULL可能就要做一堆判斷或是寫擴充方法處理。
DevExpress有一個方法叫SetValue 例如
worksheet.Rows["5"][i + 1].SetValue(array[i]);
這個就會自動轉成應有的型別,可以省很多工~
之前有將兩個資料比對的需求,雖然只要搜索這個關鍵字就能找到很多答案,但很多都是錯的! 感謝這個作者提供正確的程式碼,在現在網路資訊量越來越龐大的情況下,還是自己記錄一下這個寫法比較保險。
public bool DataTableTheSame(DataTable Table1, DataTable Table2)
{
if (Table1 == null || Table2 == null)
{
return false;
}
if (Table1.Rows.Count != Table2.Rows.Count)
{
return false;
}
if (Table1.Columns. Count != Table2.Columns.Count)
{
return false;
}
for (int i = 0; i < Table1.Rows.Count; i++)
{
for (int j = 0; j < Table1.Columns.Count; j++)
{
if (Table1.Rows[i][ j].ToString() != Table2.Rows[i][j].ToString())
{
return false;
}
}
}
return true;
}
Copyright © John Coding 技術筆記 | Powered by Blogger
Design by Anders Noren | Blogger Theme by NewBloggerThemes.com