gpt4 book ai didi

c# - Entity Framework 确保对象按顺序插入

转载 作者:行者123 更新时间:2023-11-30 15:23:56 25 4
gpt4 key购买 nike

我的数据库中有一个规则表。我插入如下规则:

Rule[] rulesToInsert = // some array of rules to insert

using(var db = new MyEntities())
{
foreach(var rule in rulesToInsert)
db.Rules.Add(rule);
db.SaveChanges();
}

当我稍后检索我刚刚添加的规则时,我注意到它们的顺序不同。按照我添加它们的顺序检索它们的最佳方法是什么?每次添加新规则时都应该调用 db.SaveChanges() 吗?或者我应该添加一个名为 SortOrder 的新列吗? 为什么没有按照我添加的顺序添加这些项目?

编辑

id 是一个 guid(字符串),因为一个规则可以有其他规则。换句话说,我正在创建一个树结构。 (规则表本身有一个外键)。当我将主键用作整数并自动递增时它崩溃了,所以我只使用了一个 guid。我想我会添加一个单独的列,称为排序顺序。

最佳答案

表格没有排序顺序(新行不能保证添加到末尾或任何其他位置)。以任何特定顺序检索行的唯一安全方法是使用 Order by 进行查询。
所以是的,您需要添加一个 SortOrder 列。 (可以将其设置为 identity 列。)

关于c# - Entity Framework 确保对象按顺序插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33765969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com