Сохранение объекта в IsolatedStorage в WP7 с помощью XNA 4.0

#windows-phone-7 #serialization #xna #xna-4.0

#windows-phone-7 #сериализация #xna #xna-4.0

Вопрос:

Как я могу сохранить объект типа GameSettings to IsolatedStorage в приложении Windows Phone 7, созданном с помощью XNA 4.0?

Из того, что я могу сказать, вы не можете пометить класс как сериализуемый и ByteFormatter недоступный. Я не нашел хорошего способа преобразовать объект в массив байтов и записать массив в хранилище. И, помимо этого, я понятия не имею, как преобразовать указанный массив байтов обратно в объект.

Любая помощь будет принята с благодарностью!

Комментарии:

1. Почему вы не можете пометить его как сериализуемый? Почему вы должны сохранять его как массив байтов?

2. Ну, я хотел сериализовать объект в файл, но я не хотел этого делать, создавая XML-документ и сохраняя его. Он просто не будет создаваться с [Serializable] помощью тега. Я полагаю, что он не существует для Windows PHone 7?

3. В любом случае, мне это не понадобилось, но я хотел бы оставить вопрос открытым, потому что мне любопытно, как можно сериализовать объект (без XML или JSON, поскольку двоичный файл, как сообщается, быстрее) на WP7.

Ответ №1:

На платформе нет встроенного двоичного форматера, но он поддерживает сериализацию XML и JSON с использованием классов DataContractSerializer и DataContractJsonSerializer.

Вы можете настроить то, что сериализуется с помощью атрибутов DataContract и DataMember .