通过Internet将数据库数据公开给自定义客户端

Dev*_*lek 2 c# service web-services

我希望创建一个服务或控制台应用程序,它将等待来自客户端应用程序的通信,根据收到的数据运行查询并将查询结果返回给客户端应用程序.

这样做的原因是删除数据库访问信息(用户名,密码,数据库等)硬编码到客户端.这也将减少客户需要完成的处理量.因此,服务或控制台需要能够同时处理多个连接并快速处理它们.

该服务接收的数据将通过互联网或本地内联网传输,因此它需要能够监听所有端口或者可以被告知在单个端口上侦听.

在视觉上它看起来像这样;

控制台/服务

任何参考材料或代码片段将不胜感激.

Mar*_* N. 5

您可以通过多种方式公开数据:

  • WCF服务,具有多个用于公开不同实体/数据集的操作.您可以公开HTTP/HTTPS或TCP/IP端点,这是最常用的端点.
  • WCF数据服务(OData协议实现).这允许以更灵活的方式向客户端公开数据.您向客户端呈现了一系列REST端点(也是HTTP(S)),但是通过指定所有类型的过滤器,它们可以更灵活地告诉您的服务器组件要返回哪些数据.这里更好的部分是你不必在服务器端做太多工作以满足不同类型的查询(与普通的WCF服务相反,通常你必须为每个查询创建一个操作).

这些是我要检查的选项.服务器组件可以是Windows服务,在这种情况下,您将被限制为经典WCF服务或要在IIS中托管的Web服务应用程序.

您现在可以深入了解这两种技术.为此提供代码片段几乎是不可能的,因为它们不是易读的片段,而是大量的代码.我建议你先熟悉这两个选项背后的想法,然后尝试查看一些代码.