Вы можете использовать IntermediateSerializer
( MSDN ) - это именно то, что XNA использует скрытно. Он в Microsoft.Xna.Framework.Content.Pipeline
сборке.
Очень большой недостаток заключается в том, что сборки конвейера контента доступны только с XNA Game Studio и не входят в распространяемую XNA Framework . Поэтому любой код, который ссылается на эту сборку, будет работать только на компьютере разработчика с установленной Game Studio.
В зависимости от того, что вы пытаетесь сделать, это либо недопустимо, и вам придется использовать альтернативу для сериализации XML. Или, если вы делаете что-то вроде редактора уровней, вы можете напрямую использовать конвейер содержимого для создания файлов XNB, которые затем можно распределять и динамически загружать. Пример WinForms 2 объясняет, как.
См. Также этот блог .