我目前正在为一家公司开发 ERP 解决方案。要求如下:
他们需要一个基于 winforms 的应用程序来处理 HR、BSC、Inventory 等模块。
一个基于网络的解决方案,需要所有员工访问他们的个人数据、申请休假等。这需要一个基于互联网的解决方案,可以从任何地方访问。
将来,他们还想要一个基于 Web 的文档管理系统。
现在我们已经完成了winforms应用程序中的一些模块,因为这是迫切的需求。对于winforms,我们采用了分层架构的水平方法。即每个模块都是一个项目,在项目中有自己的数据层和业务层。现在我需要开始研究网络解决方案。我只是想知道哪种方法是在 winforms 应用程序和 Web 应用程序之间共享数据层和模型层的最佳方法。此外,Web 应用程序需要具备适当的安全性,因为它将是敏感数据。我考虑过 2 种可能无法涵盖所有可用可能性的方法。
我能想到的方法如下:
一个。创建一个 Web 服务来处理数据层和模型。将其托管在服务器上并通过 winforms 应用程序和 Web 应用程序访问它。为此,我需要更改我已经完成的编码。但这是可以接受的,因为它作为一个层架构需要最少的努力。这里我唯一的疑问是,对于 winforms 应用程序,它会不必要地通过 Web 服务层并使其变慢。
湾。将数据层和模型转换为 dll。在 winforms 和 web 应用程序中访问这些 dll。
另外关于网络应用程序,这将是更好的方法:
一个。我应该选择基于 MVC3 的网络应用程序吗?
湾。还是 asp.net 和 WCF?
情况是我和一位同事一起做这个项目,我们只有 2 人的团队。所以我们是对所有事情做出决定的人。
我在 winforms 方面有相当好的经验,但在基于 Web 的技术方面的经验相对较少。我将非常感谢您对此的意见。