【问题标题】:sort data displayed in table with c# and mongodb使用 c# 和 mongodb 对表中显示的数据进行排序
【发布时间】:2021-09-02 06:06:47
【问题描述】:

我必须实现一个函数来对前端表中显示的数据进行排序。在那里,用户可以单击他想要排序的相关列中的向上和向下箭头。那么所有列中的所有数据都应根据用户单击的相关列进行排序。我如何在 c# 中使用 mongodb 做到这一点。

我写这个是为了根据日期排序(表中的一列。还有很多其他的,比如姓名、ID 等)

result = await _mongoDb.GetCollection<Entity.Mongo.MyModelClassName>(MyCollectionName)
.Sort(Builder<Entity.Mongo.MyModelClassName>.Sort.Ascending(x => x.Date))

这工作正常。

但我现在需要的是删除这个硬编码并根据用户偏好进行排序。

有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: c# asp.net mongodb asp.net-core asp.net-web-api


    【解决方案1】:

    您应该做一个简单的查询,并根据用户选择的 sortOrder,在服务器端执行排序。

    这应该可以帮助您理解这个概念:https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/getting-started-with-ef-using-mvc/sorting-filtering-and-paging-with-the-entity-framework-in-an-asp-net-mvc-application

    所以,

    1. 在 URL 中,您应该有一个 sortOrder 参数。
    2. 在 OnGet() 中执行您的查询,然后根据此参数对该集合进行排序。
    3. 那么你应该有一个排序的集合,并且能够做你想做的事情。

    【讨论】:

    • 非常感谢@Julien Turcotte。这非常有用。
    • Julien 你知道如何在 mongodb 中使用 SortDefinition 类来做到这一点吗?
    • @Nirdha 也许这会对你有所帮助stackoverflow.com/questions/2123529/…
    猜你喜欢
    • 1970-01-01
    • 2017-12-31
    • 2015-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2017-11-23
    • 1970-01-01
    相关资源
    最近更新 更多