c# - 从字符串创建匿名类型

标签 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的接口(interface),所以我不能给类添加序列化。如果你知道更好的方法,请告诉我。 谢谢。

最佳答案

匿名类型在编译 时定义,并像任何其他类型一样包含在程序集中。在执行时创建它们需要动态创建类型 - 它可能很快就会变得困惑。

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

RealObject.Name = AnonObject.Name;

RealObject["Name"] = AnonObject.Name;

(反之亦然。你在做什么并不是很清楚。)

关于c# - 从字符串创建匿名类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11229330/

相关文章:

不使用反射的 C# 字符串到对象

c# - 网络服务跟踪/日志

c# - 从字符串实例化 C# 中的类

c# - Asp.Net - 使用 IHostedService 的计划任务

c# - 在基于 Web 的插件架构中重用加载的程序集。最大化性能

c# - 服务器如何知道这是浏览器请求还是 api 请求?

c# - 这段代码是在创建 setter/getter 吗?我正在尝试将其翻译成 C#

c# - 复选框命令在最初未选中时不触发

c# - LinkBut​​ton 将值发送到 OnClick 后面的代码

c# - 是否可以在不同的文件扩展名中输出 typescript