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

时间:2013-04-08 12:27:28

标签: c#

假设我有一个 元数据 AccountData ,其中包含用于自动化测试的模拟数据。

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

EG。 1

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

EG。 2

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

我想知道是否有更优雅的方式来生成DynamicObjects?我在想像

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

1 个答案:

答案 0 :(得分:0)

ExpandoObject实现IDictionary&lt; T,Y&gt;所以你可以像任何其他字典一样使用它的Add()方法。

我的一个Github项目中有一个示例 - &gt; https://github.com/tucaz/XmlToObjectParser/blob/master/trunk/src/XmlToObjectParser/XmlToObjectParser.cs