BackgroundTransferService /请求

时间:2013-07-08 16:34:38

标签: c# windows-phone-8 lumia

我有问题(实际上不是一个问题,而是很多问题)

我正在开发使用BackgroundTransferService传输录制的wav文件的Windows Phone 8应用程序,在HTC 8S上工作得差不多,但在诺基亚Lumia 920看起来很奇怪的行为,它有一些不可理解的上传限制等于0.5MB正好512 KB ,使用WiFi似乎工作正常,但这个问题是过度细胞。

var transferRequest = new BackgroundTransferRequest(new Uri(url, UriKind.Absolute));
transferRequest.Tag = DateTime.Now.ToString(CultureInfo.InvariantCulture);
transferRequest.Method = "POST";
transferRequest.UploadLocation = new Uri(defect.VoiceRecordFileName, UriKind.Relative);
transferRequest.TransferPreferences = TransferPreferences.AllowCellularAndBattery;

transferRequest.Headers.Add("Content-Type", "audio/wav");

transferRequest.TransferStatusChanged += new EventHandler<BackgroundTransferEventArgs>(transferRequest_TransferStatusChanged);
transferRequest.TransferProgressChanged += new EventHandler<BackgroundTransferEventArgs>(transferRequest_TransferProgressChanged);

BackgroundTransferService.Add(transferRequest);

当我达到TotalBytesSent = 512KB时,它会停止上传

我也检查了这个

var tmp = NetworkInformation.GetInternetConnectionProfile();
var cost = tmp.GetConnectionCost();
var type = cost.NetworkCostType;

一切都很好

修改

服务器端的

收入仅为380000字节+/- 5 KB

有时,在上传文件的10次失败启动(仅发送380KB等)后,它会突然上传它:D。在我离开办公室的某个时候,它在第一次完美工作,而其他时间从未发送过。

它完全不可预测的事情

SOLUTION:

问题是服务器端...我有一个通用的处理程序来保存这个文件而不支持Range头文件(我认为)。当我将项目更改为由this教程

启发/复制的“Asp.NET Web Api项目”时

它昨天不起作用,但今天意外开始工作:D Crazy Nokia和.NET。

我们明天会看到接下来会发生什么。

1 个答案:

答案 0 :(得分:0)

IukasChudy所述,解决他的问题的方法是

  

问题是服务器端...我有用于保存此文件的通用处理程序   不支持Range标题(我认为)。当我改变我的项目时   本教程启发/复制的“Asp.NET Web Api项目”

     

它昨天不起作用,但今天它意外地开始工作   :D疯狂的诺基亚和.NET。

     

我们明天会看到接下来会发生什么。

P.S。我不喜欢用别人的内容写一个答案,但我讨厌已经解决过的未解答的问题。