C# 使用IBM DB2创建ASP.NET MVC基于Web的应用程序,其中数据源位于AS400/IBM数据库上

C# 使用IBM DB2创建ASP.NET MVC基于Web的应用程序,其中数据源位于AS400/IBM数据库上,c#,.net,asp.net-mvc,db2,C#,.net,Asp.net Mvc,Db2,我所在的公司正在逐步淘汰RPG程序,以访问AS400 IBM中端服务器上的数据,最终目标是为整个公司的20个不同地点集成基于Web的解决方案。我想提出最具成本效益的解决方案,我正在考虑创建ASP.NET MVC应用程序,并在Azure上实现实际应用程序(不是一个要求,只是一个想法) 我所关心的主要问题是,如何在集成快速简便的ASP.NET MVC应用程序的同时,仍然能够利用使用IBM大型机存储数据的能力和优势?在IIS服务器上创建具有所有逻辑的可重用.dll会很好,但另一方面,IBM服务器功能强

我所在的公司正在逐步淘汰RPG程序,以访问AS400 IBM中端服务器上的数据,最终目标是为整个公司的20个不同地点集成基于Web的解决方案。我想提出最具成本效益的解决方案,我正在考虑创建ASP.NET MVC应用程序,并在Azure上实现实际应用程序(不是一个要求,只是一个想法)

我所关心的主要问题是,如何在集成快速简便的ASP.NET MVC应用程序的同时,仍然能够利用使用IBM大型机存储数据的能力和优势?在IIS服务器上创建具有所有逻辑的可重用.dll会很好,但另一方面,IBM服务器功能强大,并且已经包含了高质量的逻辑,这使得使用n层体系结构方法很难决定在数据库和逻辑之间划清界限

目前,我的经理一直在IBM中端服务器的虚拟化Web服务器上使用php,该服务器拥有作为附加组件购买的Apache。问题是设计没有架构,即没有类或模板,这就是为什么我想采用MVC架构方法,但我也可以使用php创建自定义MVC。现在我们有一个虚拟服务器,它只包含ajax请求,所有php都硬编码到每个html/php文件中。我们目前还有12名RPG程序员,他们最终将退休


目前,RPG程序中嵌入了SQL,这些程序基本上都是存储过程,SQL存储过程允许RPG和php/ASP.NET进行通信。也许有一天我想创建一个web服务,当客户在结账时扫描产品时,它可以读取UPC条形码。在做出最终决定之前,将进行成本效益分析,但我想很快开始一个项目计划,我希望一些经验丰富的IBM/RPG程序员能够提供一些有用的信息,他们使用DB2(或其他适配器/管道)来实现非使用WebSphere创建的基于web的解决方案。一旦有更多的输入,我最终会根据需要编辑这个问题。也许有更好的解决方案,ASP.NET将不实用,例如Apache服务器w/PHP。我只是觉得创建和管理MVC应用程序会容易得多,但可能不是最实用的

首先,运行IBMi的IBMPower服务器被认为是中端系统。大型机是一组不同的硬件和软件

<> P>既然你说RPG逻辑是有用的,考虑利用。它允许您将ILE RPG和ILE COBOL程序作为web服务调用

另一个选择是开源。看来有人已经为它准备了一份报告


最后,你可能想加入中端邮件列表…因为你会发现那里的参与比这里更多

首先,运行IBMi的IBMPower服务器被认为是中端系统。大型机是一组不同的硬件和软件

<> P>既然你说RPG逻辑是有用的,考虑利用。它允许您将ILE RPG和ILE COBOL程序作为web服务调用

另一个选择是开源。看来有人已经为它准备了一份报告


最后,你可能想加入中端邮件列表…因为你会发现那里的参与比这里更多

因此,我们目前设置的是,所有业务和数据库逻辑都与rpg程序和嵌入在rpg程序中的sql过程混合在一起,使用购买的sql DB2通用数据库扩展。我们在apache虚拟服务器上安装了zend server,并在该虚拟服务器上安装了php。对于当前的Web应用程序,大多数NET.Data宏都是用php重写的,因此在ASP.NET MVC中重新编写此应用程序将不具有成本效益

我的下一个项目将是一个电子商务网站,因此我将建议使用IIS服务器来管理ASP.NET MVC应用程序(HTTPS/SSL)。我可以通过使用.NET提供程序Windows适配器访问.NET库等来集成此项目。目前,在我们当前的web应用程序上,安全措施不是很好,但我们实际上并不需要对其进行安全保护,除非我们添加了处理实际事务的功能

最后,我想创建一个ASP.NET MVC应用程序来处理实际事务,通过编辑apache服务器上指向ASP.NET MVC Web应用程序虚拟路径的http.config文件,使URI指向ASP.NET应用程序

当前的Web应用程序是如此紧密耦合,以至于大多数代码在某种意义上是不可重用的,但是RPG程序员在编写高质量代码方面做得非常出色,因此集成一些编码技术甚至调用Restful Ajax请求等都是有意义的

注意* 请记住,如果您正在创建一个较新的ASP.NET应用程序,那么如果您从零开始(利用最新和最好的应用程序),那么使用ADO.NET和旧的ASP.NET网页不是很理想


我不想坚持使用php框架的主要原因是因为我是一个.NET迷,但使用第三方CMS同样有效;也就是说,如果你能找到一个不使用MySql并且基本上允许完全定制的。此外,我们是Windows office,因此我希望开始合并Microsoft Web stack,这可以使公司的一些内部程序更加灵活。NET MVC是一个真正的n层体系结构,大部分繁重的工作都已经预定义,这使得这个框架成为我最喜欢的框架之一

因此,我们目前设置的是,所有的业务和数据库逻辑都与rpg程序和嵌入在rpg程序中的sql程序混合在一起,使用pu