c# - Entity Framework 负载排序

标签 c# entity-framework

我想在以下示例中调用 Load() 时添加一个 orderby:

(注意:这个对象有一个 EF 文章已经被加载到其他地方)

    private string GetTags()
    {
        var tags = this.Article.tags;
        if (!tags.IsLoaded && this.Article.EntityState != EntityState.Detached)
        {
            tags.Load();
            tags.OrderBy(t => t.name);
        }

        StringBuilder result = new StringBuilder();
        foreach (var tag in tags)
        {
            result.Append(tag.name).Append(" ");
        }
        return result.ToString();
    }

问题是这不是按字母顺序对标签进行排序。我错过了什么?

最佳答案

您没有将 tags.OrderBy() 分配给任何东西,将其设置为另一个变量并对其进行迭代,例如

var orderedTags = tags.OrderBy(t => t.name)
...
foreach(var tag in orderedTags) {
....
}

关于c# - Entity Framework 负载排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8359612/

相关文章:

c# - 使用 C# XmlSerializer 为大型对象集写入 block 以避免内存不足

c# - 数据绑定(bind) : Having data reflect changes of a control's value that was modified via code

.net - 如何在ADO.NET实体数据模型中连接到Oracle

c# - 针对数据库的 EF 模型验证

c# - 首先在 Entity Framework 模型中使用 money 类型

c# - LINQ to SQL 插入顺序 GUID

c# - 检查图片框值是否为空

c# - 需要帮助从列表中提取某些数据

c# - 使用 LINQ 查询和创建具有一对多关系的对象

c# - 从具有外键约束的多个表中删除记录