2013-12-10 50 views
0

問題在於:我在Xamarin中爲iPhone提供了一個項目。在這個項目中,我有文件存儲,有時與服務器數據庫同步。同步使用以下方案:我形成HttpWebRequest,添加標題並調用BeginGetRequestStream。在此之後,我在回調中從EndGetRequestStream解析流,將其添加到請求中作爲一個正文,並使用此請求調用BeginGetResponse。在響應回調中,我從EndGetResponse中解析流並將數據寫入文件存儲。它工作正常。但不是我需要通過使用NSUrlRequest和NSUrlSession重新制作這個方案,所以我可以在後臺放置同步。 BeginGetRequestStream開始出現問題,我收到請求的主體。我如何通過NSUrlRequest獲得這個流?NSUrlRequest中的HttpWebRequest.BeginGetRequestStream

感謝您的幫助!

+0

嗨,什麼是爲希望擺脫的HttpWebRequest到NSUrlResquest的原因是什麼? – Blounty

+0

因爲我想把同步到後臺。正如我在這裏閱讀http://docs.xamarin.com/guides/cross-platform/application_fundamentals/backgrounding/part_3_ios_backgrounding_techniques/ios_backgrounding_with_tasks/ in iOs 7「...任務運行時間不再持續,鼓勵開發人員使用NSURlSession API來處理網絡傳輸。「 – SDmitry

回答

0

在iOS和Xamarin中使用Background Transfers有一個很好的博客,它將介紹如何設置它。

You can find it here

+1

感謝您的回覆,但我已閱讀此帖以及其他許多人)我通過排除任何BeginGetRequestStream來解決我的問題,並通過GET請求來取代它們以從服務器接收數據。 – SDmitry