我有一个GridView,其列需要填充算法。此算法使用SQL数据库中的值。 如何在算法中使用sql数据库中的值,而不是将结果放在GridView列中。我在ASP中与数据库建立了连接,但在代码隐藏(C#)中却没有设法做到这一点 我应该使用什么类型的字段(boudfield,templatefield等)
提前致谢:)
答案 0 :(得分:0)
如果这个特定算法不能用SQL实现并合并到数据源中,那么我的第一个倾向就是一个带有超链接,LinkButton,Label,Literal的TemplateField ......(无论你想要什么实际价值)。
可能的例子:
<asp:GridView ID="gvExample" runat="server" DataSourceID="dsExample">
<Columns>
<asp:TemplateField HeaderText="Header Text">
<ItemTemplate>
<asp:Literal ID="litAlgorithmResult" runat="server"
Text='<%# DoMyFunction(Eval("DataSourceField1").ToString(), Eval("DataSourceField2").ToString(), Eval("DataSourceField3").ToString()) %>'>
</asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
在你的代码隐藏中,添加这样的东西(假设VB.NET出于某种原因):
Protected Function DoMyFunction(ByVal Value1 as String, ByVal Value2 as String, ByVal Value3 as String) as String
DoMyFunction = Value1 & Value2 & Value3
End Function
编辑:添加了几个传递给该函数的列,并添加了一个示例函数。
EDIT2:添加了完整的GridView示例。