bool ReadCommand() { if (!ReceiveBuffer.Contains(new byte[] { 13, 10 })) { return(false); } string line = reader.ReadLine(); FtpCommand command = line.BeforeFirst(' ').ToUpperInvariant().Parse((FtpCommand)0); Trace.TraceInformation("{0}-> {1}", RemoteEndPoint, line); if (!commands.TryGetValue(command, out Action <string> action)) { SendAnswer("502 Command not implemented."); } else { action(line.AfterFirst(' ')); } return(true); }