1
我希望在实体框架中执行查询时使用本地跟踪的实体在数据库之前进行搜索时。我写了一个复杂的例程来填充存储库/数据库,现在当我使用实体框架时,它不会使用已经添加但尚未保存的实体。因此,这段代码只能将一个类别添加到数据库中,而不是添加n。实体框架查询本地默认
using (Db Db = new Db()) {
for (int i = 0; i < 10; i++) {
Category Category = Db.Categories.SingleOrDefault(x => x.Name == "Hello");
if (Category == null) {
Category = Db.Categories.Create();
Category.Name = "Hello";
Db.Categories.Add(Category);
Console.WriteLine("Adding item...");
}
}
}
我该如何去做这件事?我有一个抽象,它允许我从IQueryable中更改提供者,我尝试使用它来首先访问Local集合。我没有成功。请帮忙。
我很好奇。您将如何计划查询尚未保存的实体?任何数据库生成的id都是0,因为它们还没有被创建。所以没有身份。当然,你可以查询其他的东西,但它看起来很蹩脚而且很差。为什么不保留自己的项目集合并将linq用于对象呢? – 2012-08-08 22:50:37