1

我正在开发 WinForms 应用程序。到目前为止,我已经完成了大约 50% 的工作。

无论如何我可以将其转换为 Web 应用程序而无需重写整个 GUI?

如果没有,我应该在哪个平台上使用(重写我的项目)来轻松同时拥有 Web 和 Windows UI?

在过去的 3 年里,这个主题有什么新的东西吗?

我当然知道 WPF 和 Silverlight 非常相似,但我不确定这是最失败的解决方案。

4

1 回答 1

4

这将取决于您如何构建架构。WPF 和 Silverlight 可以互换的主要原因是因为它们倾向于使用 MVVM 模式和架构(还有 PRISM 之类的东西)

http://msdn.microsoft.com/en-us/library/ff921075(v=pandp.20).aspx

理论上,如果你遵循这种模式,你可以随时放下前面,并使用完全不同的东西来设计它。这被称为:

使您的 UI 松散耦合。

如果您想将前端显示切换到 Web 应用程序,您显然必须更改要使用的 UI 层HTML,理论上如果您为应用程序提供了合适的架构,您的业务逻辑应该能够保持不变,但是如果您有很多逻辑绑定到多个Windows Forms我担心你会遭受一个漫长而痛苦的迁移过程,一路上有许多错误。

将您的应用程序视为房屋 - 您拥有房屋的主要基础(绝缘材料、砖块等),您可能希望不时更改这些基础以使结构保持最新,但基本基础通常保持不变. 但是,您可以在不影响基本原理的情况下随意装饰房屋(抱歉,类比不佳)。

希望这会有所帮助。

编辑:

我刚刚注意到您想知道与项目一起使用的最佳架构,就我个人而言,我知道我会使用 PRISM、WPF 和 MVVM - 您可以使用 Prism 使用单一代码库构建 WPF 和 Silverlight 应用程序

于 2012-10-12T10:33:44.823 回答