代码之家  ›  专栏  ›  技术社区  ›  Mike Burton

有没有类似数据库的持久层可用于.NET?

  •  2
  • Mike Burton  · 技术社区  · 15 年前

    我正试图解决一个具有相对丰富数据层的应用程序的断开连接操作问题,我突然想到,使此工作最自然的方法是使用客户端数据库。但是,我不想安装一个单独的产品,我想知道是否有任何层,在那里您基本上可以将数据库类的持久层链接到应用程序中。有人对此有经验吗?有什么好的框架可以覆盖这个领域吗?

    6 回复  |  直到 15 年前
        1
  •  6
  •   Samuel Neff    15 年前

    我建议您使用sqlite。它是一个完整的SQL数据库引擎,封装在一个没有安装或维护的DLL中,只随应用程序提供并在进程中运行。有一个很好的.NET包装器,它可以很好地集成并允许您在.NET中创建自定义函数。

    http://sqlite.phxsoftware.com/

        2
  •  4
  •   LBushkin    15 年前

    如果您不需要关系数据库的强大功能,并且希望简化对象模型的持久性转换,那么应该 look into DB4O -它是一个对象数据库,可以在客户机上运行并透明地持久化类。

        3
  •  2
  •   Sergey Mirvoda    15 年前

    可以将nhibernate与sqlite或sqlce数据库一起使用。我们使用sqlce。

        4
  •  2
  •   dcp    15 年前

    .NET具有强类型的数据集,因此非常适用。 http://msdn.microsoft.com/en-us/library/esbykkzb%28VS.71%29.aspx

        5
  •  2
  •   Mark Seemann    15 年前

    即使你不想安装另一个产品,你也可以考虑 SQL Server Compact Edition . 虽然你 需要安装它,它是免费的,并且不安装新的Windows服务。

    数据库本身只是每个数据库的一个文件。仍然支持Linq to SQL和Linq to实体,甚至可以获得Windows Mobile版本。

        6
  •  1
  •   Community CDub    8 年前

    您是在寻找一个类似数据库的持久层,因为您希望客户机端的数据库的查询能力,还是在应用程序运行之间的持久性,或者两者兼而有之?

    如果您两者都需要,或者只需要持久性,那么展示集成数据库库的其他任何一个答案都可以(比如 this one 对于SQL Lite)。

    然而, 如果您唯一需要的是对内存中的数据执行复杂查询的能力 然后我会 高度地 建议使用plain ol linq to对象,前提是该选项对您可用。

    推荐文章