【问题标题】:Range value in Dropdownlist下拉列表中的范围值
【发布时间】:2013-10-28 00:47:30
【问题描述】:

我想知道如何在下拉列表中查看每个年龄段(6-10、11-13、14-16)的儿童。例如,当我选择年龄组时,下面的 gridview 将只显示该指定年龄组的孩子。

我使用下面的 sql 将出生日期转换为年龄。

SELECT CASE WHEN (MONTH(GETDATE()) * 100) + DAY(GETDATE()) >= (MONTH(Dob) * 100)
+ DAY(Dob) THEN DATEDIFF(Year, Dob, GETDATE()) ELSE DATEDIFF(Year, Dob, GETDATE())
- 1 END AS Age FROM parent WHERE ([Gender] IS NOT NULL)

我对 sql 没有任何问题,我已将出生日期转换为年龄,但现在如何在年龄段范围内实现它?

【问题讨论】:

  • 当您选择年龄范围时,删除数据网格中的所有数据,然后遍历所有内容并检查年龄是否与您正在寻找的范围相匹配。如果匹配,则将其添加到数据网格中。
  • 刚开始学习asp.net,不太明白你的意思。

标签: c# asp.net sql sql-server html-select


【解决方案1】:

您可以使用DataView.RowFilter 方法过滤数据并将DataView 分配给DataGridView.DataSource 属性。

这里是如何使用 RowFilter 的链接:DataView.RowFilter

要填充数据表: Populating DataTable using SqlDataAdapter

然后只需要在用户每次点击ComboBox时创建一个新的DataView,并选择年龄范围。要将其还原为原始未过滤数据,您可以将DataTable 分配为DataSourceDataGridView

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多