【发布时间】:2008-10-16 09:13:01
【问题描述】:
你好,
我有一个可以从文件构造的特定对象,例如:
public class ConfigObj
{
public ConfigObj(string loadPath)
{
//load object using .Net's supplied Serialization library
//resulting in a ConfigObj object
ConfigObj deserializedObj = VoodooLoadFunction(loadpath);
//the line below won't compile
this = thisIsMyObj;
}
}
本质上,我想说“好的,现在我们刚刚反序列化了这个对象,这就是我们实际上的对象。”有几种方法可以做到这一点,我想知道哪种方法被认为是最佳实践。我的想法是:
- 构建一个复制到我的功能,逐个字段复制对象。这是当前的实现,我很确定这是一个可怕的想法,因为每当将新成员添加到对象时,我还需要记住将其添加到“复制到我”功能中,并且没有办法可以维护.
- 为 ConfigObj 类构建一个静态方法,该方法充当加载对象的事实上的构造函数。这听起来好多了,但不是最佳实践。
不过,我对两者都不完全满意。这里公认的最佳做法是什么?
【问题讨论】:
标签: c# .net serialization xml-serialization