使用来自另一个类的数据动态创建Expandoobject

本文关键字:数据 动态 创建 Expandoobject 另一个 | 更新日期: 2023-09-27 18:08:16

假设我有一个元数据AccountData,它保存用于自动测试的模拟数据。

我正在使用这些数据的子集插入到数据库中的各个表中。

。1

dynamic table1 = new ExpandoObject();
table1 .AccountId = AccountId;
table1 .DateOfBirth = AccountData.DateOfBirth;
table1 .Gender = AccountData.Gender;
table1 .Title = 0;
....etc

。2

dynamic table2 = new ExpandoObject();
table2 .Forename = AccountData.Forename;
table2 .Surname = AccountData.Surname;
table2 .HomePhone = AccountData.HomePhone;
table2 .MobilePhone = AccountData.MobilePhone;
... etc

我想知道是否有一个更优雅的方式来生成动态对象?我正在考虑一个像

这样的函数
private static ExpandoObject Generatedynamic(List<String> ColumnsToInclude)
{
//todo
}

使用来自另一个类的数据动态创建Expandoobject

ExpandoObject实现字典<T,Y>所以你可以像使用其他字典一样使用它的Add()方法。

有一个例子在我的一个Github项目-> https://github.com/tucaz/XmlToObjectParser/blob/master/trunk/src/XmlToObjectParser/XmlToObjectParser.cs