如果我想将这些项目转换为WPF,我们有很多使用.net 2.0版本开发的项目,那么这将是什么方法。请详细讨论。
答案 0 :(得分:3)
要轻松迁移到WPF,请确保您的现有代码不包含GUI与Business层之间的高度耦合,如果是这样的话,最重要的一步是重构现有代码,因此您的GUI代码将包含只有与GUI有关的内容。
在此步骤之后,要迁移的项目部分将不是最重要的部分,它只涉及GUI逻辑。
当我从winform到WPF进行这种迁移时,我们花了更多的时间来移除GUI和其他层之间的耦合,而不是迁移GUI层,因为GUI和其他层之间存在高度耦合。
答案 1 :(得分:0)
经历过类似的练习后,我会告诉你它可以做到,但是有一些挑战。 第1步:只是为了澄清当我们说WPF时,有些人的意思是Silvelright / web。 WPF不是Silverlight,因此您需要澄清我想将现有应用程序迁移到WPF胖客户端应用程序。既然你说WPF我假设你的意思是基于客户端/ Windows的应用程序,所以我们将走这条路。 (我最后会提到SL)
第2步:从代码级别评估您的项目,因为重构代码非常简单。由于您要从.net 2.0迁移到.net 4.0,我真的会查看您定义了多少类,并查看可以重构的内容或完全重新设计的某些类。这导致我们直接进入第3步。
第3步:选择一个设计模式。其中一个棘手的部分是与新的设计模式(如WPVM的MVVM)达成协议。除了lilkely之外,您还需要剥离并重新设计整个UI。因此,您还需要使用适当的设计模式(MVVM)或其中的一些风格。这也将与第二步相关联,因为您的一些代码需要更改以支持您的设计模式。
MVVM和UI开发在线有大量资源。如果你正在寻找阅读材料,我会看到WPF 4释放以及WPF插图。两者都是很好的读取,可以帮助您快速了解UI组件的工作方式以及在项目中使用它们的正确方法。
熟悉.net 4以及集合,类型以及wpf的众多新类的使用。
免责声明:您可以在许多情况下创建WPF应用程序,以使用传统的winform布局和实践。这是对还是错是开发人员的一个问题。我的个人意见是,你可以放弃学习新的设计模式并使用winform方法,但是你不会使用这种方法获得框架的全部好处和功能。
最后,如果您计划将这些应用程序迁移到网络(silverlight),那么您的工作将更具挑战性。 Silvelright确实有一些更高的学习曲线,还有一些必须学习和遵循的规则(安全性,异步调用,Web服务等)。我知道在创建迁移时,从Siverlight迁移到WPF更容易,反之亦然。随着微软继续改进Sivelright,我认为我们将会明确两种模式之间代码可以互换的地方,但现在它并不存在。
在线进行搜索,但这里有一些链接可帮助您入门: Scott Guthrie(Silverlight)http://weblogs.asp.net/scottgu/default.aspx Josh Smith(WPF MVVM)http://joshsmithonwpf.wordpress.com/
祝你好运