我想调用一个过程来填充表单中的下拉列表。现在我正在使用这样的代码:
<td class="style4">Choose Category: <font color="red">*</font></td>
<td class="style3">
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="cat1"
DataTextField="catname" DataValueField="catname">
</asp:DropDownList>
<asp:SqlDataSource ID="cat1" runat="server" ConnectionString="<%$ ConnectionStrings:billingdatabase%>" ProviderName="System.Data.SqlClient" SelectCommand="SELECT [catname] FROM [Category]">
</asp:SqlDataSource>
</td>
程序:
GO
CREATE PROCEDURE [dbo].[spshowproducts]
AS
BEGIN
SELECT catname FROM Category
END
GO
答案 0 :(得分:0)
对不起,我不确定我是否完全理解你的问题 - 一些更多的细节将不胜感激。
如果您的用户定义函数是存储过程,您应该能够将其用作数据的基础。将DropDownList
绑定到SqlDataSource
,并将SqlDataSource
的源设置为存储过程的名称,而不是指定原始SQL。
答案 1 :(得分:0)
试试这个:
<td class="style4">Choose Category: <font color="red">*</font></td>
<td class="style3">
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="cat1"
DataTextField="catname" DataValueField="catname">
</asp:DropDownList>
<asp:SqlDataSource ID="cat1" runat="server"
ConnectionString="<%$ ConnectionStrings:billingdatabase%>"
ProviderName="System.Data.SqlClient"
SelectCommand="EXEC [dbo].[spshowproducts]"></asp:SqlDataSource>
</td>