我有一个包含一些值的列表。
Example:
List<object> testData = new List <object>();
testData.Add(new List<object> { "aaa", "bbb", "ccc" });
testData.Add(new List<object> { "ddd", "eee", "fff" });
testData.Add(new List<object> { "ggg", "hhh", "iii" });
我有一个像这样的课程
class TestClass
{
public string AAA {get;set;}
public string BBB {get;set;}
public string CCC {get;set;}
}
如何转换testData
到类型List<TestClass>
?
除了这个还有其他转换方法吗?
testData.Select(x => new TestClass()
{
AAA = (string)x[0],
BBB = (string)x[1],
CCC = (string)x[2]
}).ToList();
我不想提及列名,因此无论类如何更改,我都可以使用此代码。
我也有一个IEnumerable<Dictionary<string, object>>
其中有数据。
您必须显式创建 TestClass 对象,并将外部对象转换为List<object>
以及内部对象到字符串。
testData.Cast<List<object>>().Select(x => new TestClass() {AAA = (string)x[0], BBB = (string)x[1], CCC = (string)x[2]}).ToList()
您还可以在 TestClass 中创建一个构造函数,它需要List<object>
并为你做肮脏的工作:
public TestClass(List<object> l)
{
this.AAA = (string)l[0];
//...
}
Then:
testData.Cast<List<object>>().Select(x => new TestClass(x)).ToList()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)