是否可以创建可以处理Web服务请求的C#EXE或Windows服务?显然,某种嵌入式,可能有限的Web服务器必须是EXE /服务的一部分。 EXE /服务不必依赖于安装IIS。优选地,嵌入式Web服务可以处理HTTPS / SSL类型连接。

场景是这样的:客户想要在他们的公司机器上安装一个小代理(Windows服务)。代理将有两个主要任务:1)随着时间的推移监视系统并收集某些数据,以及2)响应Web服务请求(SOAP -v-REST仍然被讨价还价)以进行数据收集或系统更改。客户喜欢Web服务API的概念,因此可以编写任意数量的客户端(使用任何语言)来访问企业计算机上运行的各种代理。他们希望安装相对轻松(安装.NET,某些程序集,服务,修改Windows防火墙,启动服务),而无需安装和配置IIS。

我知道我可以用Delphi做到这一点。但是如果可能的话,客户更愿意在C#中完成这项工作。

有什么建议吗?

有帮助吗?

解决方案

是的,有可能,你可能想看看 WCF 自托管

其他提示

是的,这是可能的(并且非常简单)。

以下是 CodeProject文章,其中介绍了如何制作基本的HTTP服务器C#。这可以很容易地放在独立的EXE或服务中,并用作Web服务。

您可能想要查看的一项技术是WCF。 WCF可能会有点痛苦,但是Keith Elder在DNRTV上进行了一次精彩的截屏,展示了如何以非常简单的方式开始使用WCF。

http://www.dnrtv.com/default.aspx?showNum=135

您可以查看 HttpListener 在.Net框架中。

我强烈推荐WCF。它非常适合您所描述的产品。有很多书籍

当然,你可以做到。务必将项目的输出类型更改为控制台应用程序。然后,在Main函数中,添加一个string []参数。关闭在命令行上收到的某些开关,您可以分支到ServiceBase.Run以作为Windows服务运行或分支到其他代码以运行控制台应用程序。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top