6

我接手了一个以前针对 WP 7.1 平台的Windows Phone项目,随着最近宣布的新平台,它也应该针对 WP 8。

我的VS 2010 解决方案包含多个项目(数据访问、模型、测试和 WP7 客户端应用程序),我正在徘徊如何包含对 WP8 的支持。

我必须注意,由于使用了 Toolkit 控件和其他专门针对 WP7.1 的第三方库,代码库与 WP8 不兼容。

Visual Studio 版本还有另一个问题 - WP7.1 可以与 VS 2010 一起使用,但 WP8 需要 VS 2012。我应该将整个代码库移动到 VS 2012 吗?

关于如何以最有意义的方式组织代码库以避免重复和可能的痛苦维护有什么好的建议吗?

我正在考虑一种解决方案 - 多个项目多个解决方案 - 可重用项目方法。代码重复(如两个单独的文件夹/解决方案)应该是最不可能的方法(后备)。

4

1 回答 1

3

最好的办法是将所有项目升级到 VS2012,以便能够支持两个 WP 版本(尽管它是 VS2012 解决方案,但您仍然可以在 VS2010 中打开 WP7 项目,因为它是落后的兼容的)。

关于组织代码库的最佳方式,在我看来,您应该创建一个支持 WP7 和 WP8 的便携式库,并在那里获取所有通用代码库(可能主要是业务逻辑,如果您使用这样的模式特别好作为 MVVM)。不要忘记控件问题,您可能应该为 WP8 设置一些不同的控件,因为屏幕尺寸不一样,您可以获得更多可用信息并使用不同的控件。如果您仍想使用相同的 XAML 代码,请在其中一个项目中只保留一个文件,并在要重复使用的另一个项目中添加相同的文件“作为链接”。

最后,您可以并且可能应该通过使用#if 指令来使用一些条件代码编译。

希望这些信息对您有所帮助,如果需要任何代码示例,请直接说出来,我会尝试收集一些东西。

于 2012-12-10T11:12:46.260 回答