远离 CodeGear/Borland 工具基本上消除了任何基于 Delphi .NET 的解决方案和对应用程序的完全重写。
我希望我在下面的回答对您的决定有所帮助。
根据经验(与一群人一起重写了 Delphi 应用程序),可以归结为以下两种选择之一。
但首先要警告:您将至少花费编写当前 Delphi 应用程序所需的全部开发工作量。
在我们的案例中,这种努力是有必要的,因为旧的 Delphi 应用程序(实际上是 Kylix)由于各种原因而终止了生命周期。我们的重写包括两部分:用有限的额外功能重写,然后是很多额外的功能(第一部分的设计已经考虑了第二部分)。
回到你的选择:
1- 在 Visual Studio 中用 C# 或 VB.NET 完全重写
2-通过使用来自 RemObjecs 的 Oxygene 部分重用现有的 Delphi 业务层代码(一个 Visual Studio 插件,其语法与 Delphi 语法非常相似)。CodeGear 将很快提供 Prism(可能在 2008 年底之前),它也将集成到 Visual Studio 中。
因为 .NET 数据访问和 UI 与 Delphi 完全不同,所以您必须从头开始(对于场景 1 和 2)。与 Visual Studio 2005 相比,Visual Studio 2008 提供了很多优势。
没有逐步进行这种迁移的事情,因为您在这里进行了完整的平台更改,所以这是一种全有或全无的方法。
这两种情况都需要相当长的时间(即使您有 Delphi 经验,让自己熟悉 .NET 世界也需要时间)。
Visual Studio 可以与 Crystal Reports 交互,并且与 SQL Server 配合得很好。
由于 Visual Studio 2008 提供了很多好处(不仅是 .NET 3.5,而且还提高了生产力),因此您最好继续这样做。在 UI 方面,您需要在 WinForms(又名 Windows 窗体)和 Windows Presentation Foundation(又名 WPF)之间做出平衡的选择。
如果它是一对一的重写,您可能希望坚持使用 WinForms,因为它对您所拥有的内容很熟悉。您可能需要使用一些 3rd 方组件来启动您的 UI;DevExpress 是一个不错的选择,因为它们在 Delphi 和 Visual Studio 中有类似的组件。
但是,如果您想追求未来的视觉效果,那么您可能会考虑 WPF。准备好在这里比 WinForms 更陡峭的学习曲线,因为它与您习惯的非常不同。
如果您决定继续使用 Delphi,您可能需要研究 VCL for Web(又名 IntraWeb)和 Delphi 2009(自 6 年前宣布 Delphi 7 以来,Delphi 世界发生了很大变化)。
祝您选择顺利!
——杰伦