所以,我仍然是ASP.net开发的新手,我已经不喜欢用ASP.net控件来显示表格格式的数据库查询结果了。 (即我更愿意自己处理HTML,设计师也是如此!)
所以我的问题是:在不使用ASP.net控件的情况下,最好和最安全的做法是什么?到目前为止,我唯一的想法是在Page_Load事件期间填充我的查询结果,然后通过getter将DataTable暴露给* .aspx页面。从那里我想我可以用foreach循环迭代并按照我的意愿制作我的桌子。
答案 0 :(得分:4)
我相信你正在寻找<Repeater>
控件。它包含一些类似于GridViews的功能,但允许您自己手工制作Header,Item和Footers的所有HTML。只需像对gridview一样调用数据绑定代码,然后更改ASPX页面以满足您的确切HTML需求。
答案 1 :(得分:3)
转发器的后继者是ListView,它还可以帮助您手工制作HTML。
答案 2 :(得分:1)
如果您对手动编码HTML感兴趣,可能值得查看ASP.NET MVC project。与标准WebForms相比,您可以更好地控制事物。
顺便说一句,在Page_Load中插入数据访问代码绝不是一个好主意。它将您的演示文稿与您的数据代码联系在一起。看看上面建议的MVC应用标准设计模式来分离问题,或者谷歌搜索“ASP.NET nTier”或类似的东西。让网站启动并运行可能需要一段时间,但从长远来看,这将为您节省很多痛苦。
答案 3 :(得分:1)
三个选项:
学会使用像GridView这样的现有控件;使用适当的CSS,它们看起来非常好,因为它们只是在客户端生成HTML
使用模板或StringBuilder生成HTML并将其放在网页上的Literal控件中
购买具有您喜欢的控件的第三方库
从长远来看,数字1是asp.net的“最佳”选项,因为你实际上将掌握其他人使用的控件;选项2很乏味;选项3是一个快速修复,可能很昂贵