接收客户端计算机发送的数据

时间:2011-02-07 03:59:13

标签: c# asp.net

我正在开发一个项目,该项目在客户端的计算机上有一个C#app(作为服务器全天候运行)。这个应用程序需要通过POST将文件作为字节流发送到我目前在我家桌面上托管的服务器。

我的服务器上运行的C#应用​​程序可以接收此文件,还是必须作为ASP app / page?

另外,我知道如何通过POST发送字节流,但是如何设置我的服务器端应用程序来监听这些传入的数据呢? 我从来没有做过这样的事情,所以我正在寻找一些让我开始的建议。

由于

3 个答案:

答案 0 :(得分:1)

你在寻找这个人:

http://msdn.microsoft.com/en-us/library/system.net.httplistener.aspx

使用它,您将基本上创建一个迷你HTTP服务器,监听您指定的某个端口。然后,您就可以将数据发布到它,并相应地处理它(类似于处理代码在ASPX代码隐藏中)。

答案 1 :(得分:1)

假设您打开直接通过TCP发送,如果您不想采用HTTP方式,可以查看此example。我个人喜欢NetworkStream类,用于通过网络无痛地发送数据。

答案 2 :(得分:1)

根据您对文件的需求以及上传时间,使用微小的asp.net应用程序执行此操作没有任何问题。

如果你可以通过http POST获取文件到服务器的唯一方法,为什么要编写自己的服务/守护进程来运行监听器?除非你有理由不在IIS中运行它,否则我会在那里做。有完整的堆栈可用于身份验证等等,如果你碰巧需要它。此外,如果你必须通过http post上传文件,我敢打赌你最终也会想要通过HTTP提供其他方法..