나는 ...이 CSV를 게시하기를 CSV 내 휴대 전화에서 파일 (나는이 내용이 경로가)하고, URL을 만들도록HttpWebRequest를 Windows Phone 용 다중/폼 데이터 파일 보내기
string path = csv.path;
string content = csv.content;
string urlPost = csv.urlPost;
HttpWebRequest와 함께 내 파일 (단지 하나의 csv 파일)을 게시하고 싶습니다. Windows 전화의 경우, C#의 HttpWebRequest에 대한 게시물을 많이 보았고 Windows 전화에 특정한 적이 없었습니다. Windows 전화의 경우 HttpWebRequest는 "normal "HttpWebRequest).
나는 이미 MSDN 페이지 => http://msdn.microsoft.com/en-us/library/debx8sh9.aspx 및 C# Upload files with HTTPWebrequest (multipart/form-data)에서 HttpWebRequest를위한이 게시물을보고있다 그러나 나는 Windows Phone 용 예제를 번역하는 도착하지 않습니다. 나는 또한 내가 RestSharp 라이브러리를 사용하지 않으려는 ... 파일이 전송되지 않습니다,(내 URL로) 내 서버라고하는 도착하지만.
내 실제로 코드 =>
public void SentPostReport()
{
Uri uri = new Uri(csv.urlPost); //Url is string url
string boundary = "----------------------------" + DateTime.Now.Ticks.ToString("x");
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.ContentType = "multipart/form-data; boundary=" + boundary;
request.Method = "POST";
request.BeginGetRequestStream(new AsyncCallback(GetRequestStreamCallback), request);
}
private void GetRequestStreamCallback(IAsyncResult asynchronousResult)
{
HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState;
// End the operation
Stream postStream = request.EndGetRequestStream(asynchronousResult);
// My File content and path.
string pathReportFile = csv.path;
string CsvContent = csv.content;
// Transmitted The File ????
postStream.Close();
// Start the asynchronous operation to get the response
request.BeginGetResponse(new AsyncCallback(GetResponseCallback), request);
}
private static void GetResponseCallback(IAsyncResult asynchronousResult)
{
HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState;
// End the operation
HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asynchronousResult);
Stream streamResponse = response.GetResponseStream();
StreamReader streamRead = new StreamReader(streamResponse);
string responseString = streamRead.ReadLine();
//DEBUG => affiche le résultat de la requête.
Debug.WriteLine(responseString);
// Close the stream object
streamResponse.Close();
streamRead.Close();
// Release the HttpWebResponse
response.Close();
}
나는 GetRequestStreamCallback의 기능 내 코드를 삭제, 그리고에 의해 대체 "// 전송 된 파일?"
을 나는 그것이 내가 보낼 수있는 곳이라고 생각 내 파일,하지만 나는 이것을 전송할 해결책을 찾지 못한다.
나는이 코드를 테스트 한 : 나는 모든 시간
byte[] byteArray = Encoding.UTF8.GetBytes(CsvContent);
postStream.Write(byteArray, 0, byteArray.Length);
및 기타 다른 포럼에서 발견하고, ...
내 서버와 TEH 호출은 좋지만, 파일이 전송되지 않습니다내 서버에서 내 파일을 보내려면 HttpWebRequest 및 Stream을 사용하는 솔루션이 있습니까? 사전에 : 감사합니다 !!