使用DB或Localfiles的POS桌面应用程序?使用WPF

时间:2010-12-26 09:39:57

标签: c# wpf database desktop

我打算为我的商店建立一个POS应用程序。我有足够的知识使用数据库构建应用程序,并使用本地文件(system.IO - 二进制文件)来存储和访问我的应用程序的数据。但是,我没有部署经验,并且在选择数据存储选项时感到困惑。

使用MDF的数据库可能是一个不错的选择(可能会减轻大量编码)但我不想在我的桌面上安装SQL服务器。因为我使用WPF进行构建,我担心的是由于服务器响应和WPF的设计呈现,我的应用程序可能会变慢。

然后我尝试仅使用本地数据(二进制文件)来存储数据并使用类和对象进行检索。但是这种编码花费了大量的时间,所以在这个过程的中间我遇到了回到数据库的困境。请帮助,因为性能明智,哪一个更好。在实际世界中,在广泛使用的专业应用中......请提出建议..

4 个答案:

答案 0 :(得分:1)

如果你不想使用SQL Server或SQL Server Express,你可以认真看看SQL Server Compact,它非常轻巧但非常强大。在性能方面,你不应该有任何问题,但最终取决于你如何编码:-)以及你将在数据库中存储多少项。

答案 1 :(得分:1)

您也可以使用SQLite。它是一种轻量级的进程中SQL引擎,广泛使用。 ADO.Net包装器允许您使用几乎任何.Net数据访问技术操作SQLite数据库文件,并且ORM广泛支持SQLite。

答案 2 :(得分:0)

你似乎有两个不同的问题:“我应该使用什么数据库?”是一个,“我应该使用数据库吗?”是另一个。

第一个问题非常容易回答:对于您所描述的应用程序,SQL Server CE几乎可以肯定您想要的:一个易于部署的单用户基于客户端的数据库,该数据库可以直接开发,其开发工具是内置于Visual Studio中。

第二个问题可能不太容易回答,因为在大多数情况下,这取决于您的申请。但由于您的销售点应用程序可能会在使用时不断产生交易,因此我认为答案非常明确地“使用数据库”。如果不这样做,您会很快发现您已经将“编写数据库管理系统”任务添加到项目计划中,并且您真的有时间这样做吗?

答案 3 :(得分:0)

使用文件将数据存储在文件系统上没有问题,这就是大多数POS系统的工作方式,很少有POS系统使用数据库(至少对快餐行业使用的POS系统来说也是如此)。 p>

对于第三方供应商而言,解析100种不同格式的麻烦很难。

我会使用上述建议并使用类似SQLCE的内容。