Пример #1
0
        void webClient_OpenWriteCompleted(object sender, System.Net.OpenWriteCompletedEventArgs e)
        {
            try
            {
                if (e.Error == null)
                {
                    System.IO.Stream       responseStream = e.Result as System.IO.Stream;
                    dynamic                obj            = e.UserState;
                    System.IO.MemoryStream memoryStream   = obj.Stream as System.IO.MemoryStream;
                    string fileName = obj.FileName;
                    if (responseStream != null && memoryStream != null)
                    {
                        string headerTemplate = string.Format("-----------------------------{0}\r\n", _boundaryNo);

                        memoryStream.Position = 0;
                        byte[] byteArr = memoryStream.ToArray();
                        string data    = headerTemplate + string.Format("Content-Disposition: form-data; name=\"{0}\"; filename=\"{1}\"\r\nContent-Type: application/octet-stream\r\n\r\n", queryFileName, fileName);
                        byte[] header  = Encoding.UTF8.GetBytes(data);
                        responseStream.Write(header, 0, header.Length);

                        responseStream.Write(byteArr, 0, byteArr.Length);
                        header = Encoding.UTF8.GetBytes("\r\n");
                        responseStream.Write(byteArr, 0, byteArr.Length);

                        byte[] trailer = System.Text.Encoding.UTF8.GetBytes(string.Format("-----------------------------{0}--\r\n", _boundaryNo));
                        responseStream.Write(trailer, 0, trailer.Length);
                    }
                    memoryStream.Close();
                    responseStream.Close();

                    memoryStream.Dispose();
                    responseStream.Dispose();

                    memoryStream   = null;
                    responseStream = null;
                }
            }
            finally { Completed = true; }
        }
Пример #2
0
 protected virtual void OnOpenWriteCompleted(System.Net.OpenWriteCompletedEventArgs e)
 {
 }