从项目列表中发送数据c#

时间:2013-01-31 09:57:02

标签: c# list sockets client-server

我有一个列表,其中包含我尝试发送到服务器的大量邮件。 这是我的代码:

    private void sendBtn_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < listORequestedCommands.Items.Count; i++)
        {
            clientSock.Send(Encoding.Default.GetBytes(listORequestedCommands.Items[i].ToString()));
        }
        removeAll_Click(sender, e);
        sendBtn.Enabled = false;
    }

但是,当我单击发送按钮时,我看到服务器收到一条消息,其中包含连接的所有列表项,而不是接收分开的消息。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

实施协议。 TCP套接字是基于流的,而不是基于消息的。

答案 1 :(得分:0)

您应该等待确认,因为您没有等待收集的字节被收集并显示为合并结果。 将数据发送到套接字后,您应该使用

之类的代码
int bytesRec = clientSock.Receive(bytes);

关注此网址http://msdn.microsoft.com/en-us/library/bew39x2a.aspx