1

为什么我不能在 XBox360 游戏中使用常规类库?

我有应用程序逻辑,我想保持独立于 XNA 并在 WPF 和 XNA 应用程序中使用。

有谁知道在 XBox/Phone7 应用程序和“常规”Windows 应用程序之间共享代码的良好做法?

4

3 回答 3

4

看看便携式类库:http: //msdn.microsoft.com/en-us/library/gg597391.aspx

使用可移植类库项目,您可以构建可移植程序集,无需修改即可在 .NET Framework、Silverlight、Windows Phone 7 或 XNA (Xbox) 平台上工作。如果没有可移植类库项目,您必须以单一平台为目标,然后为其他平台手动修改类库。可移植类库项目支持来自这些平台的程序集子集,并提供了一个 Visual Studio 模板,使构建无需修改即可在这些平台上运行的程序集成为可能。

于 2011-04-29T09:46:57.077 回答
1

JoDG 的答案可能是最实用的。但只是为了提供更多信息:

为什么我不能在 XBox360 游戏中使用常规类库?

因为不同的 XNA 平台针对不同版本的 .NET 框架。

XNA Game Studio 本身提供了一种机制(在此处记录并在此处获得更多信息)用于在两个项目之间自动镜像项目的源文件。此机制可用于为每个平台以及您的游戏项目创建库项目的副本。

对于 XNA 相关的工作,这是创建跨平台库的首选方法。当您还必须使您的库在 WPF 上工作时,您必须采取额外的步骤:

在 Windows 上,XNA 游戏就像任何其他 .NET 应用程序一样,而用于 Windows 的 XNA 库就像任何其他 .NET 库一样。除了它们引用 XNA 程序集这一事实。因此,您的 WPF 应用程序可以引用您的 XNA 库的 Windows 版本。但是如果您希望您的应用程序在没有安装 XNA 的系统上工作,您需要从该 XNA 库的 Windows 项目中删除XNA 程序集引用。

XNA Game Studio 仍会为您镜像 Windows 库和 Xbox 360 库之间的更改。

于 2011-04-29T11:31:23.797 回答
1

编辑:查看JoDG 的答案以获得更好的解决方案。

您可以尝试链接文件...

在您的 Xbox 项目中,右键单击 -> 添加现有文件,然后选择文件后,单击“添加”按钮上的小下拉箭头,然后单击“添加为链接”,如下所示:

添加为链接

如果您需要共享的不仅仅是文件,这可能不起作用,但这是一种共享代码的简单方法。

于 2011-04-29T09:20:34.113 回答