private Word ReceiveWord() { int length = ReceiveLengthPrefix(); byte[] buffer = new byte[length]; string data; Word word = null; if (length > 0) { _tcpClient.GetStream().Read(buffer, 0, length); data = Encoding.ASCII.GetString(buffer); if (data[0] == '=') { List <String> pair = data.Substring(1).Split(new char[] { '=' }, 2).ToList(); word = new AttributeWord(pair.First(), pair.Last()); } else { word = new Word(data); } } else { word = new Word(""); } return(word); }
public static ResponseData createResponseData(Response response) { var responseData = new ResponseData(); foreach (ReplySentence reply in response) { if (reply.Re) { var responseItem = new ResponseItem(); foreach (Word word in reply) { AttributeWord attribute = word as AttributeWord; if (attribute != null) { responseItem[attribute.Key] = attribute.Value; } } responseData.Add(responseItem); } } return(responseData); }