я пытаюсь создать раскрывающийся список из кода позади, но я получаю эту ошибку:список Генерирование выпадающих элементы из кода за использование C#
Object reference not set to an instance of an object.
Line 101: ddlGroupName1.DataSource = cmd.ExecuteReader();
может кто-то пожалуйста, помогите? вот мой ASPX код:
<asp:DropDownList ID="ddlGroupName1" runat="server" OnSelectedIndexChanged="GroupNameChanged1"
AutoPostBack="true" AppendDataBoundItems="true">
<asp:ListItem Text="ALL" Value="ALL"></asp:ListItem>
<asp:ListItem Text="Top 10" Value="10"></asp:ListItem>
</asp:DropDownList>
вот мой код за
private void GetGroupNameList(DropDownList ddlGroupName1)
{
DataSet dataSet = new DataSet();
String strConnString = System.Configuration.ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand("select distinct GroupName" +
" from MyTable");
cmd.Connection = con;
con.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dataSet);
ddlGroupName1.DataSource = dataSet.Tables[0];
ddlGroupName1.DataBind();
con.Close();
ddlGroupName1.Items.FindByValue(ViewState["MyFilter"].ToString())
.Selected = true;
}
сообщение об ошибке говорит, что один из объектов ('' ddlGroupName1' или cmd') равна нулю. И поскольку вы используете 'cmd' раньше, я бы подумал, что' ddlGroupName1' не установлен, когда вы выполняете метод GetGroupNameList. – Jan