比较两个列表而不使用 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;
}
你好,我正在做一个用 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;
}