string URLAuth = 
"https://technet.rapaport.com/HTTP/Authenticate.aspx";
							
WebClient webClient = 
new
							WebClient();
							
							
NameValueCollection formData = 
								new NameValueCollection();
							formData[
"Username"] = 
"myUser";
							formData[
"Password"] = 
"myPassword";
							
							
byte[] responseBytes = webClient.UploadValues(URLAuth,
							
"POST", formData);
							
string resultAuthTicket = 
Encoding.UTF8.GetString(responseBytes);
							webClient.Dispose();
							
							
string URL = 
"http://technet.rapaport.com/HTTP/Upload/Upload.aspx?Method=file";
							
string boundary = 
"----------------------------"
							+ 
DateTime.Now.Ticks.ToString(
"x");
							System.Net.
WebRequest webRequest = System.Net.
WebRequest.Create(URL);
							
							webRequest.Method = 
"POST";
							webRequest.ContentType = 
"multipart/form-data; boundary="
							+ boundary;
							
							
string FilePath = 
"C:\\test.csv";
							formData.Clear();
							formData[
"ticket"] = resultAuthTicket;
							formData[
"ReplaceAll"] = 
"false";
							
							
Stream postDataStream = GetPostStream(FilePath, formData,
							boundary);
							
							webRequest.ContentLength = postDataStream.Length;
							
Stream reqStream = webRequest.GetRequestStream();
							
							postDataStream.Position = 0;
							
							
byte[] buffer = 
new
							byte[1024];
							
int bytesRead = 0;
							
							
while ((bytesRead = postDataStream.Read(buffer,
							0, buffer.Length)) != 0)
							{
							
								reqStream.Write(buffer, 0, bytesRead);
							}
							
							postDataStream.Close();
							reqStream.Close();
							
							
StreamReader sr = 
new
							StreamReader(webRequest.GetResponse().GetResponseStream());
							
string Result = sr.ReadToEnd();
 
							Stream postDataStream = 
new
							System.IO.
MemoryStream();
							
							
							
string formDataHeaderTemplate = 
								Environment.NewLine + 
"--" + boundary
							+ 
Environment.NewLine +
							
								"Content-Disposition: form-data; name=\"{0}\";" +
								Environment.NewLine + Environment
								.NewLine + "{1}";
							
							foreach (
string
							key 
in formData.Keys)
							{
							
								byte[] formItemBytes = System.Text.
Encoding.UTF8.GetBytes(
string.Format(formDataHeaderTemplate,
								
									key, formData[key]));
								postDataStream.Write(formItemBytes, 0, formItemBytes.Length);
 
							}
							
							
							
FileInfo fileInfo = 
new
							FileInfo(filePath);
							
							
string fileHeaderTemplate = 
Environment.NewLine
							+ 
"--" + boundary + 
Environment.NewLine
							+
							
								"Content-Disposition: form-data; name=\"{0}\"; filename=\"{1}\""
								+
								Environment.NewLine + "Content-Type:
									application/vnd.ms-excel" + Environment.NewLine
								+ Environment.NewLine;
							
							byte[] fileHeaderBytes = System.Text.
Encoding.UTF8.GetBytes(
string.Format(fileHeaderTemplate,
							
								"UploadCSVFile", fileInfo.FullName));
							
							postDataStream.Write(fileHeaderBytes, 0, fileHeaderBytes.Length);
							
							
FileStream fileStream = fileInfo.OpenRead();
							
							
byte[] buffer = 
new
							byte[1024];
							
							
int bytesRead = 0;
							
							
while ((bytesRead = fileStream.Read(buffer, 0, buffer.Length))
							!= 0)
							{
							
								postDataStream.Write(buffer, 0, bytesRead);
							}
							
							fileStream.Close();
							
							
byte[] endBoundaryBytes = System.Text.
Encoding.UTF8.GetBytes(
"--" + boundary + 
"--");
							postDataStream.Write(endBoundaryBytes, 0, endBoundaryBytes.Length);
							
							
return postDataStream;