Проблема с использованием IntermediateSerializer вне проекта XNA - PullRequest
1 голос
/ 11 января 2011

Я сейчас работаю над игрой для Xbox360. В этой игре у меня много данных, хранящихся в XML. Десериализация его через IntermediateSerializer в проекте XNA Game не представляет проблемы, работает как шарм. Но поскольку эти структуры, хранящиеся в XML, могут быть довольно сложными, я решил создать простой редактор для материала, поэтому я (или, возможно, менее опытный пользователь) мог бы редактировать объекты визуально (анимации, этапы игры и т. Д.), А не писать их данные в виде XML. Затем я бы сериализовал его через IntermediateSerializer, и все было бы хорошо.

Для этого редактора я создал проект WPF и ссылался на Microsoft.Xna.Framework.Content.Pipeline.dll

Visual Studio распознает класс IntermediateSerializer, и intellisense очень рекомендует использовать пространство имен Microsoft.Xna.Framework.Content.Pipeline.Serialization.Intermediate, но я получаю следующее сообщение об ошибке:

Тип или имя пространства имен «Pipeline» не существует в пространстве имен «Microsoft.Xna.Framework.Content» (отсутствует ссылка на сборку?)

(я использую XNA 4.0 и .NET 4)

Я что-то не так делаю или это просто невозможно?

Tenshiko

Ответы [ 2 ]

1 голос
/ 12 января 2011

В свойствах вашего приложения убедитесь, что для Target framework установлено значение .NET Framework 4 .

По умолчанию новое приложение WPF предназначено для .NET Framework 4Профиль клиента.Профиль клиента предназначен для уменьшения размера загрузки .NET Framework для конечных пользователей и исключает сборки, которые используются только в разработке.В вашем случае Microsoft.Xna.Framework.Content.Pipeline.dll зависит от Microsoft.Build.Framework и Microsoft.Build.Utilities.v4.0, которые недоступны в профиле клиента.

1 голос
/ 11 января 2011

Мне кажется, что вы установили целевую платформу своего приложения WPF на .NET Framework 4.Это должно помочь.

...