我公司希望尽量减少与数据库的连接数。因此,他们希望开发一款能够处理智能客户端的智能服务器。 现在我必须提出这样一个可以连接到数据库的应用程序,然后它将从数据库读取数据并将其返回给客户端(因此应用程序将连接到Web服务,而不是直接连接到数据库)。 / p>
我想让当前使用ADO.net类的现有大型应用程序使用此智能客户端应用程序。所以解决方案是创建另一个ADO.net类,它最终使用Web服务而不是直接使用数据库。 函数应该响应像DbDataReader这样的对象。
如果我在C#工作,实现这一目标的最佳方法是什么? 我可以使用WCF来实现这一目标吗? 有没有为Oracle服务做好的准备工作?
以前有人这样做过吗?
答案 0 :(得分:1)
是的,您可以在服务层使用WCF与智能客户端通信。但是有一个问题,这些智能客户端是通过互联网还是网络进行通话(他们是在不同的计算机上使用集中式数据库)吗?如果是真的,那么WXF是有道理的。此外,您可能希望查看Repository抽象模式,因为您似乎表示支持多个数据库。另外,我建议你探索POCOS和实体框架。这些将帮助您提供良好的数据层,并允许您对服务,业务和数据层进行良好的隔离。