Database LINQ到(数据库!=Microsoft SQL Server)上的实体

Database LINQ到(数据库!=Microsoft SQL Server)上的实体,database,linq-to-entities,Database,Linq To Entities,我的产品基于成熟的SQL Server 2008 我想用一些轻量级数据库进行集成测试 不必安装在机器上,并且 不作为服务运行 …如果可能的话 我在代码中使用LINQ to实体,这可能使这个目标更加复杂 是否可以使用任何轻量级数据库来实现这一目标?那些数据库是否有LINQ提供程序或任何调用它们来将LINQ转换为实际查询的程序 有人对使用第三方数据库的LINQ to实体有任何经验吗?SQL Server 2008 Express怎么样?这与SQLServer2008兼容系统一样轻量级。它基本上是

我的产品基于成熟的SQL Server 2008

我想用一些轻量级数据库进行集成测试

  • 不必安装在机器上,并且
  • 不作为服务运行
…如果可能的话

我在代码中使用LINQ to实体,这可能使这个目标更加复杂

是否可以使用任何轻量级数据库来实现这一目标?那些数据库是否有LINQ提供程序或任何调用它们来将LINQ转换为实际查询的程序


有人对使用第三方数据库的LINQ to实体有任何经验吗?

SQL Server 2008 Express怎么样?这与SQLServer2008兼容系统一样轻量级。它基本上是一个用于SQL Server的轻量级工作站安装—它是一个服务器,它是一个后台服务

还有SQL Server Compact 3.5,它应该与SQL Server 2008兼容,但我不知道实体框架是否支持它作为存储。这只是需要添加到项目中的一组DLL,它将所有数据存储在一个.sdf文件中


Marc

LINQ到实体。。。这太糟糕了,因为如果您使用的是NHibernate,您只需在测试期间打开sqlite支持即可进行测试,并在部署期间打开SQL server。是的,但在NHibernate的情况下,我几乎不会使用LINQ to对象,不是吗?甚至连LINQ to SQL/NH都没有…@Ngu Soon Hui:LINQ to Entities可以与任何ADO.NET提供商一起使用,不是吗?@John:我不这么认为。因为它需要一个提供程序将LINQ转换为实际的T-SQL查询,并实际发送到数据库。@罗伯特:您看过它生成的查询了吗?非常标准的SQL。几乎不需要Microsoft扩展。我希望避免安装SQL Express。在这种情况下,我会安装标准版。但是我想避免在集成测试中安装数据库。然后我建议您仔细看看SQL Server Compact-希望它支持实体框架-这里不需要安装,AFAIK@Robert:当你没有与你真正使用的数据库进行集成时,集成测试是如何进行的?@John。底层RDBMS应该类似于SQL Server。模式将始终是相同的。但你可能是对的。可能存在使集成测试变得无关紧要的安全问题。与实体框架一起使用时存在一些SQL CE限制。请参见此处:-特别是,没有服务器生成的密钥,没有
跳过
获取