我想序列化一个嵌套类的对象。我已标记的与[非序列化]属性的嵌套类,但是我收到一个错误:非序列化属性创建错误
Attribute 'NonSerialized' is not valid on this declaration type. It is only valid on 'field' declarations.
如何省略嵌套类从序列化?
我已经包含了一些代码,可以显示我正在尝试做什么。 感谢您的帮助。
[Serializable]
public class A_Class
{
public String text { get; set; }
public int number { get; set; }
}
[Serializable]
public class B_Class
{
[NonSerialized]
public A_Class A { get; set; }
public int ID { get; set; }
}
public byte[] ObjectToByteArray(object _Object)
{
using (var stream = new MemoryStream())
{
var formatter = new BinaryFormatter();
formatter.Serialize(stream, _Object);
return stream.ToArray();
}
}
void Main()
{
Class_B obj = new Class_B()
byte[] data = ObjectToByteArray(obj);
}
错误是完全描述了这个问题 - 你不能将这个属性应用到除字段以外的任何东西(你试图将它应用到属性)。 – Alex 2011-03-29 15:18:27