2
我試圖用ASP .NET無法使用ASP.NET的
按照同一個存儲過程來填充同一頁面上的多個DropDownList的同一個存儲過程來填充同一頁面上的多個DropDownList的是我的代碼:
1)網頁加載事件
if(!Page.IsPostBack){
fillDropDown(SearchByBrand);
fillDropDown(SearchByBrand1);
}
2)fillDropDown方法
protected void fillDropDown(DropDownList list) {
try
{
cmd = new SqlCommand("fillDropdownWithBrandName", conn);
cmd.CommandType = CommandType.StoredProcedure;
reader = cmd.ExecuteReader();
list.DataSource = reader;
list.DataTextField = "BrandName";
list.DataValueField = "BrandID";
list.DataBind();
list.Items.Insert(0, new ListItem("--Select Brand--", "0"));
}
catch(Exception e){
errorMessage = e.StackTrace;
}
finally{
cmd.Dispose();
conn.Close();
}
}
3)下拉列表,我已經使用 1下拉
<asp:DropDownList ID="SearchByBrand" CssClass="form-control" runat="server">
</asp:DropDownList>
第二個下拉列表中的UpdatePanel進一步爲bootstrap模式,其獲得的按鈕點擊打開裏面。
<asp:DropDownList ID="SearchByBrand1" CssClass="form-control" runat="server">
</asp:DropDownList>
存儲過程
ALTER PROCEDURE fillDropdownWithBrandName
AS
BEGIN
SELECT BrandID,BrandName FROM Brand
END
只有一個下拉列表被填充。可能是什麼問題呢?
是的我只在Page_Load事件中打開連接。我重新打開fillDropDown方法中的連接,並獲得所需的結果。謝謝 !! – user4185336