//private void ReceivingFile(Socket handler) //{ // var timeout = DateTime.Now.AddSeconds(30); // var byteCollection = new List<byte>(); // //var path = Path.ChangeExtension(Path.Combine("Upload", DateTime.Now.Ticks.ToString()), _fileExtension); // var lengthRecData = -1; // while (true) // { // var buffer = new byte[1048576]; // lengthRecData = handler.Receive(buffer, buffer.Length, SocketFlags.None); // if (lengthRecData > 0) // { // timeout = DateTime.Now.AddSeconds(30); // byteCollection.AddRange(buffer); // } // else // { // if (timeout < DateTime.Now) // throw new TimeoutException("ReceivingFile"); // } // break; // } // var pathToDirectory = Path.GetDirectoryName(path); // if (!Directory.Exists(pathToDirectory)) // Directory.CreateDirectory(pathToDirectory); // File.WriteAllBytes(path, byteCollection.Take(lengthRecData).ToArray()); //} #endregion #region ISocketListener Members private void OnDataReceived(SocketDataEventArgs e) { if (DataReceived != null) { DataReceived(this, e); } }
private void OnDataReceived(object sender, SocketDataEventArgs e) { Received(e.Handler, e.Data); }