在这里挣扎着,我发现许多文档都是以CF 1.0为中心的,并且讨论了2.0的变化,以允许泛型和在CF 2.0上键入DS'es。好吧,CF 2.0已经走了,MS仍然没有更新就显示出来。Web服务,泛型,键入DS,Compact Framework 2.0,当前(2009)最佳实践?
我还没有准备好跳入WCF,我的客户有很多旧的小型框架 2.0机器。我很幸运,因为这些Web服务是私密的,非常封闭。
所以,我的问题:
1)类型化数据集或仿制药使用vb.net CF 2.0支持?据我所知,它们不是或者部分不是被序列化为一个数组,这是一件坏事吗?
2)在发送和返回小的数据集,不超过20行,我有一些老的方法,字符串数组,发送比数据集小得多的信封。这仍然是一种很好的工作方式,或者有更好的方法吗?我在字符串数组中传递5-6个元素并获得合理的性能。这些缺点是将数据从数据读取器或数据集预处理成字符串数组。
3)使用ds作为车辆,我发现编码非常快速和容易。我正在使用getchanges方法并一次发送很少的行。如果我的信封在150K以下,我是这样做的罪犯吗?
谢谢!
谢谢,回复。我有泛型工作,但它不会将一个类或一个类的列表与多个成员序列化。字符串列表工作在顶部,但类型CustClass的列表不会在CF端序列化。所以,除了短名单之外,这个名单已经出来了。我认为阵列最适合这种情况。一系列类型似乎序列化好。 我很幸运,这个应用程序特别是一个WiFi应用程序,我们有500kb/s的所有地方,除了塔下和建筑物后。 – Davery 2009-11-05 17:11:59
关于保存,我发现了一个有趣的方法来取得一个DS,用“getchanges()”拉出变化,然后删除除了我的重要列(除去笔记等)。这在数据被保存时通过,然后通过WS重新集成。不错,但我希望我可以发送一个轻量级对象。 – Davery 2009-11-05 17:12:31
嗯,我已经能够在Web服务中序列化和反序列化项目的通用列表 - 这不应该成为.NET 2.0 ASMX Web服务中的问题。你的CustClass标记为[Serializable]吗?另外,有些类型不能被序列化,例如字典,流等,所以你必须忽略这些属性。 –
jspru
2009-11-05 18:37:57