C# DataTable 이전값과 현재값 동기화 함수
/// <summary> /// DataTable안 현재/이전 값 동기화 /// </summary> /// <param name="dt">해당 데이터 테이블</param> /// <param name="psDisplay">비교할 값</param> public void GetChangedFieldRow(ref DataTable dt, params string[] psDisplay) { string sBeforeValue = ""; string sAfterValue = ""; int nCol = dt.Columns.Count; foreach (DataRow dr in dt.Rows) { int nDiffCnt = 0; for (int i = 0; i < nCol; i++) { if (psDisplay.Contains(dt.Columns[i].Caption)) continue; sBeforeValue = dr[i, DataRowVersion.Original].ToString(); sAfterValue = dr[i, DataRowVersion.Current].ToString(); if (sBeforeValue != sAfterValue) nDiffCnt++; } if (nDiffCnt == 0) dr.Delete(); } dt.AcceptChanges(); }