.net - 实体框架中的插入顺序不正确或随机
问题描述
我正在寻找一种允许您按创建顺序将记录插入数据库的解决方案。
到目前为止,我发现 ef 不支持此类活动的信息。
如何解决这个问题?
我打开了自动增量,所以我不能为新记录提供一个 id(或者至少我认为是这样)
以下示例从下到上或随机写入 db。
var subcategories = new List<Subcategory>()
{
new Subcategory { SubcategoryName = "This should be first", CategoryId = 1 },
new Subcategory { SubcategoryName = "Second", CategoryId = 1 },
new Subcategory { SubcategoryName = "Third", CategoryId = 2 },
new Subcategory { SubcategoryName = "Fourth", CategoryId = 2 },
new Subcategory { SubcategoryName = "LastOne", CategoryId = 3 }
}
context.Subcategories.AddRange(subcategories);
context.SaveChanges();
解决方案
我正在寻找一种解决方案,允许您以正确的顺序将记录插入数据库。
要控制顺序,请在添加每个实体后调用 SaveChanges()。您可以将所有调用包装在一个事务中以优化性能。
推荐阅读
- python - 使用 Pyhive 插入 Hive 调用错误
- ruby - Ruby 中 `\w` 与 `[[:alpha:]]` 之间 Unicode 行为的差异
- angular - 如何使用确认进行垫子滑动切换
- vue.js - 路由到最后一个活动子组件
- xcode-ui-testing - 如何让 XCUITest 应用程序(XCUI 测试应用程序,而不是 SUT)访问照片库?
- java - 随着 Generex lib 使用正则表达式之一获得非人类可读的结果
- c# - 更新到新项目时,uwp sqlite add-migration 崩溃
- sapui5 - SAPUI5 再次写入完整的 DOM 而不是增量?
- algolia - 显示搜索结果时呈现标题
- json - Artifactory 查询语言中的排序属性