假设我有一个对象 MyClass ,其中有一个对象 SerialPort 。 我正在尝试序列化并将“ MyClass”的对象保存到文件中,但我不能这样做,因为SerialPort类的对象不可序列化。跳到追逐上,我有这样的东西:
[Serializable]
public class MyClass
{
public MyClass()
{
}
public SerialPort mySerialPort;
}
似乎C#不允许我取消设置或更改mySerialPort的类型。在这种情况下,解决方法是什么?
mySerialPort = null; // obviously doesn't work
我需要从MyClass类型的对象中访问串行端口,但是在序列化时我并不需要它。有没有办法在对象构造期间将其作为参数传递,因此它不是对象的一部分?
答案 0 :(得分:1)
您可以用[NonSerialized]
标记该字段以将其从序列化中排除。