比较两个列表而不使用 linq 更新历史记录

Compare two list with out using linq for update History

你好,我正在做一个用 c# webform 编写的项目,如果有人更新了我应该插入到日志中的数据,它需要更改的日志记录 table 但我需要捕获哪一列或哪个字段正在更新中。 所以我认为比较 2 列出更新前的 oldList 和更新后的列表 如果我有这个 class

public myClass class{
public string col1{get; set;}
public string col2{get; set;}
public string col3{get; set;}
}

并像这样用数据列出

List<myClass > old = new List<myClass >();
List<myClass > new = new List<myClass >();

我如何编译这 2 并在不使用 Linq 的情况下获取列和新旧数据的差异,因为该应用程序是现有的并且使用 .net 2.0 框架所以我相信 Linq 在这方面还不可用。

出于某种原因,我不需要更新框架。

Implement IComparable interface in your class

public class myclass : IComparable<myclass>
        {
            public string col1 { get; set; }
            public string col2 { get; set; }
            public string col3 { get; set; }

            public int CompareTo(myclass obj)
            {
                return this.col1.CompareTo(obj.col1);
            }
        }

Then sort your list and iterate through it

            oldlist.Sort();
            newlist.Sort();
            for (int i = 0; i < oldlist.Count; i++)
            {
                string oldcol1 = oldlist[i].col1;
                string newcol1 = newlist[i].col1;
            }