从字符串创建匿名类型

时间:2012-06-27 15:07:08

标签: c#

所以我有一个匿名类型,我已经使用了ToString,并将其放入文件中。它看起来像这样(并且非常像JSon ......):

{ Name = Name, Description = Description, Status = Pending, Key = Template, SubmittedBy = MyName, Identity = 2fb7a40b-e07a-4f1a-a48b-2c2720567f35 }

现在我想转向其他方式(编辑:从文件中取出字符串并将其放入我可以放入已知对象的格式中)并将其放入匿名类型(具有相同的属性,但我如果他们是可铸造的或类似的东西,我不在乎,我只是想快速做一些类似的事情。

AnonObject = GetObjectFromFile(blah);
RealObject.Name = AnonObject.Name;

我只有一个RealObject接口,所以我不能在类中添加序列化。如果你知道更好的方法,请告诉我。 感谢。

1 个答案:

答案 0 :(得分:6)

匿名类型在 compile 时定义,并且与任何其他类型一样包含在程序集中。在执行时创建它们需要动态创建类型 - 它可能最终会很快变得混乱。

如果您使用的是.NET 4,则可以使用ExpandoObjectdynamic;否则我可能只是使用Dictionary<string, object>并改变它:

RealObject.Name = AnonObject.Name;

RealObject["Name"] = AnonObject.Name;

(反之亦然。目前还不清楚你在做什么。)

相关问题