Когда вы пытаетесь установить значение для ddlType
, DataSource
еще не загружен в DropDown
.Если вы проверите отладчик, свойство ddlType.Items
покажет, что в настоящее время у него нет элементов, что объясняет исключение NullReference.
Попробуйте позвонить ddlType.DataBind()
прежде, чтобы убедиться, что ddlType.Items
имеет элементы из базы данных.
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
ddlType.DataBind(); // Load data from DataSource
if (Request.QueryString["searchtype"] != null)
{
ddlType.SelectedValue = ddlType.Items.FindByText(Request.QueryString["searchtype"]).Value;
ddlType.SelectedValue = "1";
}
}
else
{
}
}
Убедитесь, что ddlType.DataBind()
находится в условии if(!Page.IsPostBack)
,чтобы избежать загрузки данных из базы данных на каждый PostBack.