ネストされたクラスを持つオブジェクトをシリアル化しようとしています。ネストされたクラスに[NonSerialized]属性のタグを付けましたが、エラーが発生します。
属性'NonSerialized'は、この宣言タイプでは無効です。'field'宣言でのみ有効です。
ネストされたクラスをシリアル化から除外するにはどうすればよいですか?
私がやろうとしていることを示すかもしれないいくつかのコードを含めました。助けてくれてありがとう。
[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);
}