不使用数据库如何搜索单词并在其他字段中显示相关内容

时间:2010-09-13 11:56:23

标签: c# .net file dictionary

所以问题可以重新格式化为“什么可以替换离线版本中的数据库?

最初的想法受到wordweb的启发,您可以在其中输入单词,然后您可以在一小部分中显示它的含义。

当然,他们没有保存数据库中的所有单词和含义。他们在用什么?它们是否将所有值存储在文件中并检索相应的含义?

是否有任何文章显示上述方法(阅读文件的特定部分)。

他们使用HashTables还是类似的?

4 个答案:

答案 0 :(得分:3)

您可以使用SQLite等本地数据库,也可以使用文本文件并将数据存储在其中。

答案 1 :(得分:1)

我建议您使用嵌入式数据库来存储单词和含义。试着看看Sqlite。它使用起来很简单,只需要在您的设置中包含一个dll,并且a wrapper to use it from c#。 它非常稳定,快速且广泛使用。

答案 2 :(得分:1)

如果您使用.net,我认为最简单的方法是设置一个Sql Server Compact数据库,它是一种由Microsoft软件制作的sqlite,易于集成到VS .Net。

以下是来自网站http://www.microsoft.com/sqlserver/2008/en/us/compact.aspx的说明粘贴,您可以在该网站免费下载。

用于构建客户端应用程序的嵌入式数据库

Microsoft SQL Server Compact是一个免费的SQL Server嵌入式数据库,非常适合为移动设备,桌面和Web客户端构建独立和偶尔连接的应用程序。

热门功能

  • 免费使用和分发
  • 支持桌面和移动设备
  • 占地面积小,易于部署
  • 完全嵌入式架构
  • 无需管理
  • 单个文件,无代码数据库格式
  • 支持ClickOnce,XCopy,MSI,CAB和非管理员嵌入式安装选项
  • 支持所有Microsoft Windows嵌入式,移动,桌面和服务器操作系统
  • 支持Transact-SQL语法和SQL Server数据类型的丰富子集
  • Microsoft Visual Studio 2008集成
  • 支持ADO.NET,LINQ to SQL,LINQ to Entities和ADO.NET实体框架
  • 支持多个并发本地连接

答案 3 :(得分:0)

我不知道它们正在使用什么,但至少有SQLite,一个不需要安装任何服务器或其他程序的数据库引擎,因为它被编译到你的可执行文件中并使用单个文件数据库。这就像你将获得一个只有文件系统访问权限的实际数据库一样接近。 否则,如果数据量不是太大,您可以将其存储为不太难解析的文件格式(例如XML,虽然开销很大),将所有数据加载到内存中,然后使用.NET内置的DataSet功能,或者更好的是,Linq到对象或Linq到数据集来操作数据。