我确定我在这里遗漏了一些明显的东西。
我有大约 20 个数据绑定的 GridView,每个都有一些共同的特性。假设它们都是人员列表,并且每个都以大约 10 列开始,这些列是带有悬停的复杂链接按钮等,它们都是一样的。这些网格的其余部分非常宽,由完全不同的列组成。它只是重复的前 10 个(大约 100 个)列。
因此,我有这段代码可以处理这 10 个数据库列并使用 10 个 Eval() 语句等呈现该 html。每个 GridView 中的代码都是相同的,它重复了 20 次,这显然不酷。
我不能只是将它放在用户控件或自定义控件中,因为我需要 GridView 来执行列标题和所有这些东西。我当然可以为一列放置一个用户控件并以这种方式呈现我想要的所有内容(“eval”这样嵌套的工作),但它没有给我列标题,这也很复杂。
那么问题来了:有什么方法可以打破模板化的 GridView 控件来抽象这个重复的代码?我几乎想要一种服务器端包含或预处理的东西,因为我只需要真正重复文本,但我需要在 asp.net 尝试编译它之前完成它。我可以使用自定义控件来呈现我喜欢的任何 HTML,但这并不能解决问题,因为它是我需要生成的 asp.net 代码,而不是 HTML。