WCF - 使用"DataSet"通过NetTcpBinding传输数据是否很好



其中一个按服务合约将一个巨大的DataSet传递给客户端。我正在使用BufferedTranfer模式。

在极少数情况下,我有更多的数据要发送,因此,我无法将TransportMode更改为Streamed。

使用"DataSet"通过NetTcpBinding传输数据是一种好的做法吗?

DataSets的替代品吗?

请不要从WCF服务返回数据集。

有关信息,请参阅:从WebServices返回数据集是撒旦的产物,代表世界上真正邪恶的一切,

在一个3层的应用程序中,我们确实成功地从WCF服务层返回了数据集,并且不会影响性能(太多)。原因是:我们的SQL数据库实体可以随时通过元数据进行更改。客户端可以请求实体的元数据信息(列、类型、大小、可为null等)。

对服务的请求为实体命名,并将元数据中指定的列的当前设置检索为DataSet。这允许完全的灵活性,而硬编码对象模型则不然。

在跨平台/网络发送数据之前,出于安全原因,建议将数据序列化,甚至加密为某种格式,而XML似乎最有可能用于大块数据。我听说它效果更好,但我自己从来没有尝试过。

最新更新