如何序列化.net对象的成员
本文关键字:成员 对象 net 序列化 | 更新日期: 2023-09-27 17:53:22
我有一个类,它有一个System.Diagnostics.Process类型的字段。我想序列化我的对象,但这似乎不可能。有可能吗1. 通过其属性process. startinfo . filename序列化成员进程当我反序列化,我想尝试重制进程使用FileName,使用它的构造函数。
给出一些示例代码
public class Job{
/*[something like SerializeMember("StartInfo.FileName")]*/
/*[something like DeserializeMember(new Process(value))]*/
System.Diagnostics.Process process;
string name;
}
如果有更好的方法,请随意添加
我认为您可以通过创建要序列化的属性来实现这一点,然后在一组属性上尝试启动进程。下面是它的半伪代码…
public class Job{
[XmlIgnore]
System.Diagnostics.Process process;
public ProcessFileName
{
get {return process.StartInfo.FileName;}
set { process = Process.Start(value); }
}
}
也许添加一个属性会有所帮助。
public SomeSerializableClass SerializedProcess
{
get {
ConvertProcessToSomeSerializableClass(process);
}
set {
process = ConvertSomeSerialzableClassToProcess(value);
}
}
然后在process
上添加属性[XmlIgnore]