2012-07-10 85 views
1

我使用的Visual Studio Express的2012 RC設計的Windows 8替代webclient.uploadstringasync爲Windows 8 Metro風格應用在C#

在過去我的Metro風格應用程序,我開發的Windows Phone應用程序中我用webclient.uploadstringasync將字符串數據發佈到服務器。但由於webclient不適用於Windows 8,我正在尋找它的替代方案。

我試過使用httpclient.postasync但它沒有工作(不知道爲什麼)。

任何人都可以建議我該怎麼做。請解釋你建議的任何方法,並嘗試舉一個例子。我是C#的初學者,所以任何幫助都可以工作。謝謝

這裏是代碼示例,我用httpclient.postasync但沒有工作(不知道爲什麼)。

HttpClient data=new HttpClient(); 
HttpContent post; 
async private void buttonupdate_Click(object sender, RoutedEventArgs e) 
{ 
    post=new StringContent("I put the string here which is to be posted"); 
    await data.PostAsync(URI,post); 
} 
+0

當您嘗試使用'的HttpClient發生了什麼事。 PostAsync'?你能給一個代碼示例嗎?這聽起來像是你正在尋找的替代方案。 – 2012-07-10 19:12:45

+0

@DanielSklenitzka用代碼示例更新了問題。請幫助謝謝 – prolific 2012-07-11 10:40:28

+0

是否有任何異常?你在菲德勒看到什麼? – 2012-07-11 11:32:12

回答

0

請期待BackgroundUploader類爲Windows 8提供的重載方法可能有助於實現您的要求

MSDN

+0

我不認爲我應該使用這個,因爲我只是想上傳一個小字符串,這將是一個kb ...它顯然寫在您提供的鏈接,我應該只使用這種方法,如果我想上傳像音樂,視頻等文件。 – prolific 2012-07-11 10:43:20

+0

我同意你我只是給你一個替代品,不知道你會上傳多少數據。我很高興刪除我的答案 – HatSoft 2012-07-11 10:44:40

+0

不,你不必刪除你的答案....現在我已經在問題中添加了代碼示例....你現在可以回答我嗎? – prolific 2012-07-11 10:53:42

1
HttpContent stringContent = new StringContent("Put Your Data Here"); 
stringContent.Headers.ContentType = MediaTypeHeaderValue.Parse("application/x-www-form-urlencoded"); 
stringContent.Headers.ContentLength = uriString.Length; 
stringContent.Headers.ContentEncoding.Add("UTF-8"); 
相關問題