Мне нужно заполнить флажки данными, поступающими из базы данных, но на моей странице не отображаются флажки. Пожалуйста, дайте мне знать правильный способ сделать это. В C#, метод Page_Load Я написал это:Заполнять флажки через базу данных
public partial class dbTest1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string Server = "al2222";
string Username = "hshshshsh";
string Password = "sjjssjs";
string Database = "database1";
string ConnectionString = "Data Source=" + Server + ";";
ConnectionString += "User ID=" + Username + ";";
ConnectionString += "Password=" + Password + ";";
ConnectionString += "Initial Catalog=" + Database;
string query = "Select * from Customer_Order where orderNumber = 17";
using (SqlConnection conn = new SqlConnection(ConnectionString))
{
using (SqlCommand cmd = new SqlCommand(query, conn))
{
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
if (!IsPostBack)
{
Interests.DataSource = dr;
Interests.DataTextField = "OptionName";
Interests.DataValueField = "OptionName";
Interests.DataBind();
}
}
conn.Close();
conn.Dispose();
}
}
}
}
И в .aspx, у меня есть это:
<asp:CheckBoxList ID="Interests" runat="server"></asp:CheckBoxList>
Пожалуйста скажите мне правильный способ сделать это.
Убедитесь, что ваш SQL-запрос выполнен, и на этой странице нет других ошибок. Вы пытались запустить отладчик? Потому что ваш код выглядит просто отлично. –
В вашем примере вам нужно проверить обратный вызов, прежде чем открывать соединение db и запрашивать данные. –
В несвязанной заметке вместо того, чтобы компилировать строку подключения в вашем коде, поместите ее в 'web.config'. – RedFilter