我使用.NET Web服务作为数据库的接口。从此Web服务返回行的最佳方法是什么?
我依稀记得.NET 2.0在返回DataTable对象时遇到了问题。这些问题是否仍然存在?
更新: .NET 1.1中的部分the issues。另外,我相信在2.0中,DataTable被反序列化为客户端的DataSet对象。我对么?
答案 0 :(得分:2)
你是否有效地尝试完成ADO.net的工作?你最好还原POCO(普通的旧c#对象),你可以有效地序列化以发送肥皂,然后将它们拉回到另一侧。也许你可以在你的问题中给我们一些关于你想做什么的更多信息。
Datanet和DataTables在.net 3.0中没有变化。如果你想使用实体框架传递东西,你会遇到不同的麻烦。如果它们是行,请查看使用Linq,然后序列化然后将行实体作为集合传递。有一些方法可以将实体重构为客户端的数据上下文,以便引用链接备份等。
答案 1 :(得分:1)
我同意斯宾塞的意见。使用Web服务,您可以与客户创建合同。不应仅仅因为您想要更改数据库的形状而破坏此合同。我将创建一个与表结构匹配的类,并返回此结构的“列表”对象。然后,当数据模型更改时,您可以维护此接口并创建与新结构匹配的第二个服务方法。