C#NET服务器/客户端应用程序

时间:2011-03-06 13:42:32

标签: c# .net client

我开始使用一个相当基本的服务器/客户端应用程序(逻辑上明智),但我对我应该用于什么需求感到困惑。看起来有几个选项,但基本上我将拥有一个主服务器和X个客户端应用程序(每个专用机器一个)。这个设置的主要目的是让我基本上可以做到以下几点......

- 通过ASP前端向服务器(控制台应用程序)发出命令,在其中一个远程客户端上安装软件。 - 服务器告诉客户端将zip包(从各种FTP站点)下载到位置并将其提取到特定路径。

我不是肯定的,但看起来C#有套接字,然后是某种WebClient类型的交易。我假设套接字是最好的路由,并使用异步(每个远程客户端都在自己的线程中连接,与其他人单独处理服务器)。

关于此的任何信息都会很棒!

2 个答案:

答案 0 :(得分:8)

如果没有详细说明您的具体要求,我肯定会看WCF

它在一个非常完整和安全的框架中包含了许多现有的远程处理,客户端/服务器,Web服务方案。

Client Server Programming with WCF

答案 1 :(得分:2)

WebClient允许您发出HTTP请求,因此我认为这与此无关。

您可以为此应用程序采取许多方法。

其中一个当然是与WCF一起使用,它提供的选项比您需要的时间多出一百万。然而,WCF确实有学习曲线,特别是在没有经验的情况下很难理解所有抽象背后究竟隐藏了什么。此外,如果您的目标是.NET 2.0,则无法使用此解决方案。

您还可以使用套接字实现简单的TCP客户端/服务器模型。虽然您可以针对原始套接字进行编程,但.NET还为服务器提供了便捷类System.Net.Sockets.TcpListener,为客户端提供了System.Net.Sockets.TcpClient。这种方法更接近金属,但这是一个权衡:更容易理解你究竟在做什么,但你必须自己实现相当多的功能。

相关问题