0

このような MyBoard というクラスがあります

Public MyBoard
{
private BoardTile[,] tiles;
private bool tilesEliminated;
public int blabla {get; set; }
}

Serializable 属性がクラス全体をシリアル化することを正しく理解している場合、私がしようとしているのは、必要なフィールドのみを XML 形式にシリアル化できるようにすることです (他のフィールドは無関係です)。

私の場合、次のようなものを書きたいと思います:

[ISerializable]
Public MyBoard
{
[SerializeMe]
private BoardTile[,] tiles;
private bool tilesEliminated;
public int blabla {get; set; }
}

シリアル化するものとそうでないものをいくつかの属性で選択したいのですが、クラス「BoardTile」内で同じことを行い、関連するフィールドも選択したいと思います。

そして、このようなことを書きます

main()
{
MyBoard m = new MyBoard();
//fill the tiles somehow.
m.SerializeToXml();
}

私が正しく理解していれば、ISerializable を継承して自分でカスタム シリアライザーを作成する必要がありますが、おそらくそれを回避して、.Net に、知らないいくつかの属性を使用して自動的にシリアル化させることができます。

ちなみに、出力が XML になることは私にとって重要なので、それを読むことができます。

私の質問を理解していただければ幸いです。助けてくれてありがとう:)

4

1 に答える 1