我有一个通过 WCF 将数据发送到服务器的 Windows 移动应用程序。
它发送的数据有时会超出 Windows 移动设备的限制。我想知道流式传输是否有助于不需要将我必须一次发送到内存中的所有数据都保存在内存中。
这是一个简单的例子:
[DataContract]
public class MainContract
{
[DataMember]
public Guid ID { get; set; }
[DataMember]
public List<SubContract> SubContract { get; set; }
}
[DataContract]
public class SubContract
{
[DataMember]
public Guid ID { get; set; }
[DataMember]
public string ImageCaption { get; set; }
[DataMember]
public Byte[] ImageAsBytes { get; set; }
}
假设我只有 1 个MainContract
对象。但是里面有很多SubContract
东西。(我的真实情况更复杂)。
将所有内容MainContract
保存在内存中对于客户端来说太多了。
流式传输是否允许我通过网络分段发送数据?还是我仍然必须在客户端缓冲所有内容,而流式传输只是有助于接收大数据?