0
私のゲームの状態を独立したストレージにシリアル化するために.net XmlSerializerクラスを使用しています。
これにより、膨大な数の属性でコードを掘り下げることを避けることができます。私のクラスのリストをWindows PhoneのIsolated Storageにシリアライズ
私は公開データの私の構造体のリストをシリアル化しようとするたびに、私は例外を取得:
私はどのように修正すればよい
を「型GameState_test.Planetのオブジェクトをシリアル化しながら、循環参照が検出されました」この?私はたくさんの答えを研究しましたが、WP7に関係するものはありません。
public class Hazard { public Planet CurrentPlanet;} //reference to the planet its on
public struct Inventory
{
public Inventory(int coins = 0, int arrows = 0) { Coins = coins; Arrows = arrows; }
public int Coins;
public int Arrows;
}
public class Planet
{
public Inventory Inventory;
internal readonly int Index;
internal readonly List<int> Connections;
public Hazard pHazard; //hazard currently on planet
}
例外は何ですか?**正確に**などですか? (また、しかし、マイナー:クラスの意図された目的をサポートする属性(DTOのシリアライゼーション)はコードを "掘り下げ"ますか?) –
これはinvalidOperationExceptionでした。シリアライゼーションの – Griffin
内部例外を含む例外メッセージ全体を送信してください。 –