在Windows Mobile 6程序中处理数据的最佳方法

时间:2009-06-01 05:19:36

标签: c# windows-mobile

我正在为自己制作一个小项目,在C#中处理WM6上的gps和其他一些很酷的东西。我只是想知道,当你需要访问数据时从文件中读取是否更好?或者将整个文件读入程序并处理它更好?主要是,我在谈论我将在某种类型的文件/数据库中保存的位置,不太确定哪一个。这些位置需要经常循环,这就是为什么我认为我应该读取整个文件然后再写回来,但是有多少数据变得太多了?是否存在因从文件中读取大量数据而导致的效率问题,这些问题与根据需要从文件中读取下一个值时明显的效率问题相对应? 它在这个阶段并没有太大的区别,因为我可能永远不会得到大量的数据,但我认为在某些阶段考虑可扩展性是很好的。

干杯

3 个答案:

答案 0 :(得分:4)

Shane是正确的,将数据存储在SQLCE数据库中,并使用参数化查询从那里访问您需要的内容。

至于内存使用情况,WM6(和6.5)基于WinCE 5.something

WinCE 5. *有这种恼人的设计,没有虚拟内存的概念,内存被分成32mb插槽,应用程序只分配一个插槽 - 实际上你的应用程序只能使用32mb的内存。当然有黑客可以解决这个问题,但这仍然是一个基本限制。

你真的不需要过于担心使用太多内存 - 总是调用dispose,只保留你需要保留的内容,并学习如何使用已经保存了我的a $$的'.NETCF远程性能监视器'在ocassion。

答案 1 :(得分:0)

我会推荐某种数据库。无论在什么平台上,它都会让事情变得更轻松。

我可以查看SQL Server Compact或Windows Mobile EDB数据库API。 SQL Server Compact最容易在C#中使用。

答案 2 :(得分:0)

以及其他建议是db4Objects它有一个轻量级的紧凑框架版本(只需下载.NET版本,你也可以得到一个紧凑的框架版本)。