lju*_*mir 6 c# codebase visual-studio windows-phone-7 windows-phone-8
我接手了一个以前针对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吗?
关于如何以最有意义的方式组织代码库以避免重复和可能的痛苦维护的任何好建议?
我在考虑一个解决方案 - 多个项目与多个解决方案 - 可重用项目方法.代码重复(如两个单独的文件夹/解决方案)应该是最不可能的方法(回退).
最好的办法是将所有项目升级到 VS2012,以便能够支持两个 WP 版本(尽管它是 VS2012 解决方案,但您仍然可以在 VS2010 中打开 WP7 项目,因为它是落后的)兼容的)。
关于组织代码库的最佳方法,在我看来,您应该创建一个支持 WP7 和 WP8 的可移植库,并在那里获取所有公共代码库(可能主要是业务逻辑,如果您使用这样的模式,则特别好)如 MVVM)。不要忘记控件问题,您可能应该为 WP8 设置一些不同的控件,因为屏幕尺寸不一样,并且您可以获得更多可用信息并使用不同的控件。如果您仍想使用相同的 XAML 代码,请在其中一个项目中只包含一个文件,然后在要重新使用它的另一项目中添加该相同文件“作为链接”。
最后,您可以而且可能应该通过 #if 指令来使用一些条件代码编译。
希望这些信息对您有所帮助,如果需要任何代码示例,请直接说出来,我会尽力收集一些内容。