【问题标题】:Porting a Web Application to Desktop Application将 Web 应用程序移植到桌面应用程序
【发布时间】:2009-05-13 21:47:36
【问题描述】:

我有一个用于典型数据输入、检索和报告类型功能的生产网络应用程序。出于移动性的原因(需要现场访问)我的任务是将该 Web 应用程序移植到桌面应用程序。现有应用程序的结构(我没有设计或编码)是这样的:


3 各个项目都有自己的 DALSQL DB 名称相同。 Project 1 是核心应用。 Project 2 存在于 Project 1 之上并添加了更多功能,但不能单独存在。 项目 3 建立在前 2 个项目的基础上,与两个项目一样大,但又不能单独存在。

要进入Project 3,这个网络应用程序,你登录到1选择一个Person ,导航至2选择注册,导航至3,然后使用计划。所有三个项目共享 项目 1 中现有的 1 个 BLL


考虑到所有这一切,时间紧迫,我相对较新,以及我与最初三个人的创作(3 个单独的开发者创建了上述 3 个项目)都没有任何关系的事实对我有什么建议。

例如,我可以重复使用 aspx 页面吗?它们可以像 WPF 一样嵌入吗?转换了吗?

我应该记住哪些类型的 UI 重构注意事项?从理论上讲,是否存在某些会破坏事物的变化?

其他人曾经做过类似的事情吗?提示?

谢谢!

编辑 1

下面有一个 Cassini 的建议,巧合的是,这里有一篇关于它的帖子。 HERE 那篇文章让我相信它对我不起作用,因为我的“应用程序”实际上是 3 个项目,有 3 个单独的部署。是对的还是我读错了?

【问题讨论】:

    标签: .net winforms web-applications cassini


    【解决方案1】:

    时间紧迫?

    如何在本地安装 Cassini Web 服务器或同等设备,然后让 Web 应用程序在本地计算机上运行?尽管您会遇到数据库同步问题,但这将消除大部分转换。在漫游桌面上创建的任何新记录也将与共享操作存储同步。

    除此之外,我不知道重用 ASPX 页面的好方法。当然,如果将业务逻辑分解到单独的类中,而不是嵌入到页面本身中,您将能够重用 BL 类。

    【讨论】:

    • 这似乎是最快的解决方案。如果它看起来不像 Web 应用程序,您可以使用 Html 应用程序 (HTA) 或在 win 表单中嵌入浏览器。
    • 卡西尼?有趣,这是一个相当常见的应用程序吗?
    • Cassini 我认为是用 C# 编写的轻量级 http 服务器的代号。它最终成为 VS2008 附带的测试服务器的基础。在 ASP.NET 项目上按 F5 时,代码将发布到测试服务器。 Cassini 是开源的并获得许可,允许人们将其重新打包到自己的应用程序中。由于各种原因,人们将其嵌入到 WinForms 应用程序和其他系统中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-07
    • 1970-01-01
    • 2013-05-23
    • 1970-01-01
    • 2017-05-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多