C#(ASP.NET)现在为每个DB条目列出数据列表

C#(ASP.NET)现在为每个DB条目列出数据列表,c#,asp.net,database,C#,Asp.net,Database,我在一个网站上工作,我有一个名为“下载”的数据库表,其中有我想让用户下载的文件。这些文件被绑定到“下载类型”表。 我知道如何在页面上显示数据库中的数据,但我如何“拆分”它,以便我可以为eg 下载类型1 文件1 文件2 文件3 下载类型2 文件1 文件2 文件3 下载类型3 文件1 文件2 文件3 。。。我希望我的问题是合理的。。。 所以,“非动态”的方法是为每个条目创建一个数据列表,但是如果用户在数据库中再添加一个“donwload type”会怎么样 欢迎任何提示 谢谢你的时间 您可以使用中继

我在一个网站上工作,我有一个名为“下载”的数据库表,其中有我想让用户下载的文件。这些文件被绑定到“下载类型”表。 我知道如何在页面上显示数据库中的数据,但我如何“拆分”它,以便我可以为eg

下载类型1
文件1
文件2
文件3
下载类型2
文件1
文件2
文件3
下载类型3
文件1
文件2
文件3

。。。我希望我的问题是合理的。。。 所以,“非动态”的方法是为每个条目创建一个数据列表,但是如果用户在数据库中再添加一个“donwload type”会怎么样

欢迎任何提示


谢谢你的时间

您可以使用中继器或GridView来执行此任务

如果您有权访问LINQ:
创建LINQ查询,将所有数据放入按下载类型排序的已排序IQueryable对象中。然后,您可以使用repeater或gridview在该列表中进行迭代,每次出现新的下载类型时,您都可以在继续下一项数据之前输出粗体类型

如果无法使用数据表
将您的数据下放到数据表中,并确保按下载类型对其进行排序。然后,您可以使用表的DefaultView执行筛选,或者使用中继器,您可以按照上面的类似说明进行操作


请记住,您必须使用这些项目的onDataBound事件,并使用全局变量跟踪当前下载类型。

这可以通过使用带分组的GridView来完成。不幸的是,ASP.NET Gridview并没有让这变得像它应该做的那样简单。但这里有一篇关于如何做到这一点的文章:

您可以使用此技术将数据绑定到Gridview,然后按下载类型列分组

有一些第三方产品使这变得非常容易,但它们并不总是免费的。我们使用的是。使用他们的GridView,您只需告诉它分组依据的列,就完成了。如果这是您需要经常做的事情,或者希望允许您的用户做的事情,那么它就值得购买