【发布时间】:2018-10-09 13:17:24
【问题描述】:
我有两个列表。只有一个字段差异。如何互相填写列表。
[Serializable()]
public class Lst1
{
public string filed1 { get; set; }
public Int16 filed2 { get; set; }
.
.
.
public Boolean filed100 { get; set; }
}
[Serializable()]
public class Lst2
{
public string filed1 { get; set; }
public Int16 filed2 { get; set; }
.
.
.
public Boolean filed100 { get; set; }
public string filed101 { get; set; }
}
List<Lst1> Lst1_ = new List<Lst1>();
List<Lst2> Lst2_ = new List<Lst2>();
我从文件中填写列表。 然后,我需要从列表一中填写列表二,有很多字段并且我不想使用foreach循环。
应该记住,我之前的课程已经构建并序列化并存储在一个文件中。而现在我需要将之前的信息转移到第二个类结构中。
我不想使用这个循环!
foreach (var t in Lst1_)
{
Lst2_.Add(new lst2
{
filed1 = t.filed1,
filed2 = t.filed2,
.
.
.
filed100 = t.filed100,
filed101 = "kk"
}
}
【问题讨论】:
-
你能解释更多你想要做什么吗?你尝试了什么?
-
您的课程有 100-101 个字符串属性?为什么这么多?在我看来,类保存的数据可能更好地表示为列表。
-
不妨考虑automapper。或者甚至只是将所有这些存储在
string[]中,似乎这些只是字段和数字,所以数组或List<T>对我来说更有意义。 -
糟糕的班级设计,一个适合所有人
-
也许类 2 应该从类 1 继承,并且只有一个属性。