我需要创建包含简单属性并需要实现以下功能的 DTO 对象:
- 从 XML 节点加载
- 保存到 XML 节点
- 克隆
一遍又一遍地对这些功能进行编程是每个DTO将非常乏味且容易出错,我认为所以我可以考虑替代方案。
- 使用反射,我想会很慢
- C# 代码生成作为构建前或构建后步骤(两者都需要构建解决方案两次,因为我需要一个编译的类来获取要生成的代码的信息)
- 使用 CodeDom?我认为这是最复杂的解决方案
完成此类任务的最佳/最简单的常用方法是什么?我如何确定选择哪一个或有替代方案?
您可以使用System.Xml.Serialization.XmlSerializer
以及Deserialize
和Serialize
方法从XML加载和保存。
克隆可以通过自动映射程序执行。