匿名类型基于字符串列表

时间:2013-02-07 18:12:07

标签: c#-4.0 anonymous-types

我有一个类型,让我们说

class MyType { string A; string B; int C; DateTime D;}

我有一个字符串列表,让我们说

List<string> columns = new List<string>(){ "A", "C", "D"};

我想在运行时基于与列中字符串的属性匹配来创建新类型。就像我的新类型将是

   MyType oldType = new MyType() { 
                   A = "Hello", 
                   B = "World",
                   C = 2013,
                   D = DateTime.Now()
              }
   // it contains ACD as in columns list and corresponding values from oldType
   var newtype = new { 
                   A = "Hello" ,
                   C = 2013,
                   D = DateTime.Now()
                }

除了使用emit创建新类型之外,我无法理解我应采取的方法。建议我不要使用反射或发射。

0 个答案:

没有答案