我开始使用一个相当基本的服务器/客户端应用程序(逻辑上明智),但我对我应该用于什么需求感到困惑。看起来有几个选项,但基本上我将拥有一个主服务器和X个客户端应用程序(每个专用机器一个)。这个设置的主要目的是让我基本上可以做到以下几点......
- 通过ASP前端向服务器(控制台应用程序)发出命令,在其中一个远程客户端上安装软件。 - 服务器告诉客户端将zip包(从各种FTP站点)下载到位置并将其提取到特定路径。
我不是肯定的,但看起来C#有套接字,然后是某种WebClient类型的交易。我假设套接字是最好的路由,并使用异步(每个远程客户端都在自己的线程中连接,与其他人单独处理服务器)。
关于此的任何信息都会很棒!
答案 0 :(得分:8)
如果没有详细说明您的具体要求,我肯定会看WCF。
它在一个非常完整和安全的框架中包含了许多现有的远程处理,客户端/服务器,Web服务方案。
答案 1 :(得分:2)
WebClient
允许您发出HTTP请求,因此我认为这与此无关。
您可以为此应用程序采取许多方法。
其中一个当然是与WCF一起使用,它提供的选项比您需要的时间多出一百万。然而,WCF确实有学习曲线,特别是在没有经验的情况下很难理解所有抽象背后究竟隐藏了什么。此外,如果您的目标是.NET 2.0,则无法使用此解决方案。
您还可以使用套接字实现简单的TCP客户端/服务器模型。虽然您可以针对原始套接字进行编程,但.NET还为服务器提供了便捷类System.Net.Sockets.TcpListener
,为客户端提供了System.Net.Sockets.TcpClient
。这种方法更接近金属,但这是一个权衡:更容易理解你究竟在做什么,但你必须自己实现相当多的功能。