【发布时间】:2010-07-13 09:27:36
【问题描述】:
我正在尝试从 Windows Phone 7 应用程序的协议缓冲区格式的服务器下载响应。
我正在尝试使用 WebClient 执行此操作,我的问题如下。
WebClient只有两种下载方式
DownloadStringAsync(new Uri(url));
和
OpenReadAsync(new Uri(url));
但是这两种方法都不好检索响应,因为响应大小应该有16个十六进制字符(080118CBDDF0E104),但是这两种方法得到的字符串和流的大小只有8。
所以我正在寻找一种方法来解决我的问题。 我找到了一个 C#
public static T DownloadProto<T>(this WebClient client, string address)
{
byte[] data = client.DownloadData(address);
using (var ms = new MemoryStream(data))
{
return Serializer.Deserialize<T>(ms);
}
}
但此方法已被删除或尚未在 Windows Phone 7 开发工具包上实现。
【问题讨论】:
-
确实;我根本没有时间查看“v2”的套接字/等方面,它是在电话 7 上工作的 v2。但是,这里真正的问题是:什么数据来自网络?如果你有一个小而完整的例子我可以玩,我很可能可以用它来帮助完成这个区域......
-
但是;这里的主要问题似乎是将完整的片段发送给客户端 - 这应该与实际的序列化引擎无关......?
标签: c# windows-phone-7 protocol-buffers protobuf-net