我们即将开始一个项目,该项目涉及使用具有数十万条记录的 Sql Server 2005。过去我使用 NHibernate 取得了不错的效果。但现在我正在评估 Linq 到实体的数据访问。我有这些关于 L2E 的问题,
- L2E 的缓存与 NHibernate 相比有多好(基本上性能如何)?
- 使用单个 .edmx 文件有多容易(我们可能有多个开发人员同时处理这些文件)?如果我们决定拆分文件,这样做有多容易,有什么缺点?
- 模拟生成的类有多容易?
- 是否支持 MS Access?
我们即将开始一个项目,该项目涉及使用具有数十万条记录的 Sql Server 2005。过去我使用 NHibernate 取得了不错的效果。但现在我正在评估 Linq 到实体的数据访问。我有这些关于 L2E 的问题,
Linq2Entities 不做任何隐式缓存。当您运行查询时,它会将 Linq 转换为 SQL 查询,执行它并返回结果。就是这么简单。
您不能将模型拆分为多个 EDMX 文件。好吧,你可以,但你会失去实体之间的关系。如果您的数据库包含多个不相互依赖的实体组,您可以这样做。
不是特别的。我们有一个模拟出ObjectContext
拦截调用的系统(我们使用一个接口来进行实体访问,它ObjectContext
在运行时映射到真实,在单元测试时映射到模拟ObjectContext
。
确实如此,但您必须自己创建实体(您不能从数据库中生成它们)。